我在 AWS EC2 实例上添加第二个 IP 时遇到问题。我正在运行 Ubuntu 14.04。
我已经尝试过这个:
右键单击实例并从管理私有 IP 中添加“私有 IP”。
通过 SSH 进入机器并添加
/etc/network/interfaces.d/eth0_0.cfg
包含以下内容的文件:auto eth0:0 iface eth0:0 inet dhcp
然后我跑了sudo ifup eth0:0
并且得到了:
Internet Systems Consortium DHCP Client 4.2.4 Copyright 2004-2012
Internet Systems Consortium. All rights reserved. For info, please
visit https://www.isc.org/software/dhcp/
Listening on LPF/eth0:0/0a:ee:d5:2f:e3:36 Sending on
LPF/eth0:0/0a:ee:d5:2f:e3:36 Sending on Socket/fallback DHCPDISCOVER
on eth0:0 to 255.255.255.255 port 67 interval 3 (xid=0x4dfeb91a)
DHCPREQUEST of 172.31.21.78 on eth0:0 to 255.255.255.255 port 67
(xid=0x4dfeb91a) DHCPOFFER of 172.31.21.78 from 172.31.16.1 DHCPACK of
172.31.21.78 from 172.31.16.1 RTNETLINK answers: File exists bound to 172.31.21.78 -- renewal in 1683 seconds.
但是我无法使用 ifconfig 看到它。我只能在运行以下命令时看到它ifconfig eth0:0
eth0:0 Link encap:Ethernet HWaddr 0a:ee:d5:2f:e3:36
UP BROADCAST RUNNING MULTICAST MTU:9001 Metric:1
您知道如何激活第二个私有 IP 吗?
答案1
我在 ubuntu 12.04 上工作。您可以检查该命令在 14.04 上是否仍能工作。
附加 /etc/network/interfaces
auto eth0:1
iface eth0:1 inet static
address 10.0.10.101 ### this address is the secondary IP you created on aws console
我认为 AWS 不支持 DHCP,所以地址是固定的。
追加后,运行此
/etc/init.d/network restart
它将启动 2 个网络接口。
答案2
对于 Ubuntu 16.04:附加到 /etc/network/interfaces.d/50-cloud-init.cfg
auto eth0:1
iface eth0:1 inet static
address 172.1.2.3
其中 172.1.2.3 是你的辅助私有 IP。然后执行
sudo systemctl restart networking
你可以通过 ifconfig 检查是否正常:
ifconfig | fgrep -A2 eth0:1
答案3
对于 Ubuntu 16.04,你还可以通过添加以下内容关联两个以上的 IP:
auto eth0:1
iface eth0:1 inet static
address 172.1.2.1
auto eth0:2
iface eth0:2 inet static
address 172.1.2.2
文件中还有一个注释,如果您希望这些更改在实例中持久存在,则需要使用以下内容创建文件 /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg:
network: {config: disabled}
答案4
您的机器每个逻辑网络接口只能有一个 IP 地址。您可以使用 bridge-utils 创建两个虚拟网络接口,每个接口都拥有不同的 MAC 地址,从而获得各自的 DHCP 租约。
为什么你的机器要有两个IP?