このトピックでは、Linux ECS インスタンスに静的 IP アドレスを設定する方法について説明します。
背景
デフォルトでは、ECS インスタンスは Dynamic Host Configuration Protocol (DHCP) モードを使用するように設定されています。
説明
この例では、CentOS 7.6 の ECS インスタンスを使用します。
手順
ステップ1:IP アドレスとゲートウェイの表示
-
Linux ECS インスタンスにログインします。 次のコマンドを実行して、インスタンスの IP アドレスとサブネットマスクを表示します。
ifconfig出力は次のようになります。
[root@aliyuntest ~]# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.16.10.10 netmask 255.255.255.0 broadcast 172.16.10.255 ether 00:16:3e:0c:4f:c3 txqueuelen 1000 (イーサネット) RX packets 285116 bytes 217057111 (207.0 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 143703 bytes 40663281 (38.7 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 loop txqueuelen 1000 (ローカルループバック) RX packets 509 bytes 102908 (100.4 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 509 bytes 102908 (100.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 -
次のコマンドを実行して、インスタンスのゲートウェイを表示します。
route -n出力は次のようになります。
[root@aliyuntest ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.10.253 0.0.0.0 UG 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0 172.16.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
または、次のコマンドを実行して、インスタンスメタデータからサブネットマスク、ゲートウェイ、IP アドレスを取得することもできます。 詳細については、「インスタンスメタデータ」をご参照ください。
curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/[$MAC_ID]/netmask
curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/[$MAC_ID]/gateway
curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/[$MAC_ID]/private-ipv4s
出力は次のようになります。
[root@aliyuntest ~]# curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/00:16:3e:0c:4f:c3/netmask
255.255.255.0
[root@aliyuntest ~]# curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/00:16:3e:0c:4f:c3/gateway
172.16.10.253
[root@aliyuntest ~]# curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/00:16:3e:0c:4f:c3/private-ipv4s
["172.16.10.10"]
[root@aliyuntest ~]#
説明
[$MAC_ID] をお使いの ECS インスタンスの MAC アドレスに置き換えてください。
ステップ2:ネットワークタイプの静的設定
-
次のコマンドを実行して設定ファイルを編集します。 [BOOTPROTO] を [static] に設定し、前の手順で記録した [IP アドレス]、[ゲートウェイ]、および [サブネットマスク] を追加します。
vim /etc/sysconfig/network-scripts/ifcfg-eth0例:
DEVICE=eth0 BOOTPROTO=static ONBOOT=yes IPADDR=172.16.10.10 GATEWAY=172.16.10.253 NETMASK=255.255.255.0 -
:wqを入力し、Enter キーを押して保存し、終了します。 -
次のコマンドを実行して、ネットワークサービスを再起動します。
systemctl restart network