これがシナリオです。サブネットには2つのホストがあり(どちらもvirtualbox VMです)、両方とも同じネットワーク192.168.1.0上にあります。さらに、別々のネットワークスライスを持つ2つのブリッジインターフェイスを作成しました。
質問: Host1ブリッジのIPがHost2ブリッジのIPと通信する方法はありますか? ip route
などを使用してルートを構成し、vxlanなどの追加のネットワーク層をインストールせずに、あるブリッジのL3パケットを別のブリッジにルーティングする方法を探しています。
構成:
Host1インターフェイス:
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:ca:4a:14 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.197/24 brd 192.168.1.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:feca:4a14/64 scope link
valid_lft forever preferred_lft forever```
7: br-faf88cbd32f0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:28:8c:40:00 brd ff:ff:ff:ff:ff:ff
inet 172.11.11.1/24 brd 172.11.11.255 scope global br-faf88cbd32f0
valid_lft forever preferred_lft forever
Host1ルーティング:
default via 192.168.1.1 dev enp0s3 proto static
172.11.11.0/24 dev br-faf88cbd32f0 proto kernel scope link src 172.11.11.1
192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.197
Host2インターフェイス:
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:40:ae:5f brd ff:ff:ff:ff:ff:ff
inet 192.168.1.196/24 brd 192.168.1.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe40:ae5f/64 scope link
valid_lft forever preferred_lft forever
92: br-037dfd7b32bc: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:fe:0d:54:86 brd ff:ff:ff:ff:ff:ff
inet 172.11.12.1/24 brd 172.11.12.255 scope global br-037dfd7b32bc
valid_lft forever preferred_lft forever
inet6 fe80::42:feff:fe0d:5486/64 scope link
valid_lft forever preferred_lft forever
Host2ルーティング:
default via 192.168.1.1 dev enp0s3 proto static
172.11.12.0/24 dev br-037dfd7b32bc proto kernel scope link src 172.11.12.1
192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.196
私が正しく理解していれば、ブリッジを介してHost1またはHost2に接続されているものが、他のホストと通信できるようにしたいですか?
あなたがするだろう
ip route add 172.11.11.0/24 via 192.168.1.197 # on Host2
ip route add 172.11.12.0/24 via 192.168.1.196 # Host1
ただし、Virtualboxによって有効にされた可能性のあるファイアウォールまたはNATに注意してください。ルーティングが破損する可能性があります。
カーネルIP転送をオンにしていますか?以下で確認できます:
cat /proc/sys/net/ipv4/ip_forward
1を返す場合は、有効になっています。 0の場合、トラフィックをルーティングする各ホストで有効にする必要があります。これを実行して、現在のシェルで有効にすることができます。
echo 1 > /proc/sys/net/ipv4/ip_forward
変更を永続化するには、/ etc/sysctl.confを編集して、これを新しい行に追加します。
net.ipv4.ip_forward = 1
Sysctl.confが更新されたら、これを再起動または実行して、ファイルから新しい値をロードします。
sysctl -p
ルーティング部分をご存知のようです。