
我創建了一個作業系統7實例於EC2,安裝了我需要的應用程序,分配了1彈性IP到預設網路介面(乙太網路0)並且這一切都是可訪問的。
現在我創建了另一個網路介面,分配了一個彈性IP然後附加埃尼之後到實例。現在,該實例無法在乙太網路1(新的附加網路介面)。
我嘗試過在谷歌創建上找到的各種方法ifcfg-eth1在/etc/sysconfig/網路腳本但沒有運氣。
如需協助,這是來自的輸出ifconfig-a(IP 被屏蔽):
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001
inet 1XX.3XX.2XX.4XX netmask 255.255.240.0 broadcast 1XX.3XX.2XX.4XX
inet6 fe80::2e:a1ff:fe01:c763 prefixlen 64 scopeid 0x20<link>
ether 02:2e:a1:01:c7:63 txqueuelen 1000 (Ethernet)
RX packets 219 bytes 28188 (27.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 284 bytes 31055 (30.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth1: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 02:78:73:34:66:35 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
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
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 23 bytes 4968 (4.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 23 bytes 4968 (4.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
這是來自IP位址:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc pfifo_fast state UP qlen 1000
link/ether 02:2e:a1:01:c7:63 brd ff:ff:ff:ff:ff:ff
inet 1XX.3XX.2XX.4XX/20 brd 1XX.3XX.2XX.4XX scope global dynamic eth0
valid_lft 3404sec preferred_lft 3404sec
inet6 fe80::2e:a1ff:fe01:c763/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
link/ether 02:78:73:34:66:35 brd ff:ff:ff:ff:ff:ff
我的/etc/sysconfig/network-scripts/ifcfg-eth0文件包含以下內容:
DEVICE="eth0"
BOOTPROTO="dhcp"
ONBOOT="yes"
TYPE="Ethernet"
USERCTL="yes"
PEERDNS="yes"
IPV6INIT="no"
PERSISTENT_DHCLIENT="1"
答案1
最後,除了這個人之外,沒有人在:https://www.internetstaff.com/multiple-ec2-network-interfaces-on-red-hat-centos-7/幫助過我。
為了在連結將來失效時保留訊息,以下是該帖子的豐富內容:
強制您的預設閘道為乙太網路0:
編輯/etc/sysconfig/網絡並添加:
GATEWAYDEV=eth0
如果不這樣做,主路由表的預設網關就會設定為最後一個要配置的接口,這會導致一些奇怪的行為。
配置您新增的每個附加介面:
在/etc/sysconfig/網路腳本,創建一個ifcfg-ethX對於每個新介面。
調整:
這裝置名稱要匹配埃尼。
DEVICE="eth1" BOOTPROTO="dhcp" ONBOOT="yes" TYPE="Ethernet" USERCTL="yes" PEERDNS="yes" IPV6INIT="no" PERSISTENT_DHCLIENT="1"
為每個附加介面新增自訂路由。
再次在/etc/sysconfig/網路腳本, 創建一個路由-ethX每個介面的檔案。
調整:
- 設備名稱。
- 增加表號。
- 您的 VPC 子網路閘道的閘道。
將來源IP修改為彈性網卡所指派的內部網路位址。
default via 10.0.0.1 dev eth0 table 1 10.0.0.0/24 dev eth0 src 10.0.0.10 table 1
也在/etc/sysconfig/網路腳本, 創建一個規則-ethX對於每個介面。
調整:
- 增加表號以匹配路由-ethX。
將IP修改為彈性網卡所指派的內部網路位址。
from 10.0.0.10/32 table 1
重新啟動網路服務,您應該可以啟動並運行。您可以透過以下方式確認ip規則:
# ip rule
0: from all lookup local
32764: from 10.0.0.10 lookup 3
32765: from 10.0.0.11 lookup 2
32766: from all lookup main
32767: from all lookup default
請注意,亞馬遜建議了自訂路線和規則乙太網路0,但我們發現允許乙太網路0使用預設主路由表不僅有效且更靈活。