2つのパブリックアドレスを持つUbuntu18サーバーがあります。
名前空間を作成し、2番目のパブリックIPを介してインターネットに接続するにはどうすればよいですか?
(プログラムを起動し、強制的に2番目のIPを使用してインターネットに接続する必要があります)
IP:
root@vm8950217476:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
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 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 9a:40:ef:c5:bb:62 brd ff:ff:ff:ff:ff:ff
inet 130.185.76.181/24 brd 130.185.76.255 scope global eth0
valid_lft forever preferred_lft forever
inet 130.185.76.18/24 brd 130.185.76.255 scope global secondary eth0
valid_lft forever preferred_lft forever
inet6 fe80::9840:efff:fec5:bb62/64 scope link
valid_lft forever preferred_lft forever
IPルーティング:
root@vm8950217476:~# ip route
default via 130.185.76.254 dev eth0 proto static
130.185.76.0/24 dev eth0 proto kernel scope link src 130.185.76.181
ここで説明されているいくつかのソリューションに達しました。
- ネットワークネームスペースをインターネットに接続する
- 名前空間ごとのパブリックIPアドレス1個
- ネットワークネームスペースとパブリックIP
- https://askubuntu.com/questions/1214876/ubuntu-server-virtual-network-interface-with-internet-access
ただし、数日間テストした後もまだ機能しません。このプロセスは私にとって混乱しているようです。これは、netnsコマンド(ip addr、Route、gw、...)で使用する必要があるアドレスがわからないためです。
私が試した最近のステップ:
ip netns add test
ip netns exec test ip link set lo up
ip link add link eth0 name test0 type macvlan
ip link set test0 netns test
ip netns exec test ip addr add 130.185.76.18/24 brd + dev test0
ip netns exec test ip link set test0 up
ip netns exec test ip route add default via 130.185.76.254 dev test0
root@vm8950217476:~# ip netns exec test ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
From 130.185.76.18 icmp_seq=10 Destination Host Unreachable
From 130.185.76.18 icmp_seq=11 Destination Host Unreachable
From 130.185.76.18 icmp_seq=12 Destination Host Unreachable