文档首页/ 弹性云服务器 ECS/ 用户指南 (阿布扎比区域)/ 常见问题/ 网络配置/ Linux操作系统云服务器无法获取元数据怎么办?
更新时间:2024-04-18 GMT+08:00

Linux操作系统云服务器无法获取元数据怎么办?

问题描述

Linux操作系统云服务器的安全组出方向已按照元数据获取的前提条件进行配置,但是无法通过169.254.169.254获取元数据。

根因分析

在配置了静态IP的Linux系统云服务器中执行以下命令:

# ip route| grep 169.254

如果169.254.169.254路由不存在,并且169.254.0.0/16路由存在。

图1 查看服务器路由信息

图1所示,说明Linux操作系统云服务器配置了静态IP,重启网络服务后部分Linux操作系统服务器会将原有的169.254.169.254路由替换为169.254.0.0/16路由,后者没有指定下一跳。导致Linux操作系统云服务器无法获取元数据。

处理方法

  1. 添加169.254.169.254路由,指定下一跳网关和主网卡,示例:

    # ip route add 169.254.169.254 via 192.168.1.1 dev eth0

    其中192.168.1.1是主网卡对应子网的网关,eth0是主网卡名称。

    怎样查看主网卡?

    怎样查看网关地址?

  2. 执行以下命令,验证获取元数据的功能正常。

    # curl http://169.254.169.254

    图2 验证获取元数据的功能
  1. 执行以下命令,创建或修改/etc/sysconfig/network-scripts/route-eth0文件,固化静态路由防止重启失效。

    # vi /etc/sysconfig/network-scripts/route-eth0

    添加如下内容:

    本例以eth0,IP为192.168.1.1为例,请根据实际情况替换对应的网卡和网关IP。

    # 169.254.169.254 via 192.168.1.1

怎样查看主网卡?

  1. 登录管理控制台。
  2. 单击管理控制台左上角的,选择区域和项目。
  3. 选择“计算 > 弹性云服务器”。
  4. 单击弹性云服务器名称。

    系统跳转至该弹性云服务器详情页面。

  5. 选择“基本信息”页签,查看主网卡相关信息。
    图3 查看主网卡信息

怎样查看网关地址?

  1. 登录管理控制台。
  2. 单击管理控制台左上角的,选择区域和项目。
  3. 选择“计算 > 弹性云服务器”。
  4. 单击弹性云服务器名称。

    系统跳转至该弹性云服务器详情页面。

  5. 单击虚拟私有云名称,跳转至虚拟私有云列表页。
    图4 在云服务器详情页面单击虚拟私有云名称
  6. 单击对应的子网,跳转至子网列表页面。
    图5 在虚拟私有云页面单击子网名称
  7. 单击子网名称,进入子网详情页面查看网关信息
    图6 查看网关信息