yy4.36を私の仮想マシンに接続したいです。
ホストシステムでyy4.36を設定できます。したがって、ホストへのパスが有効で、ping y.y.4.36
インターネットから取得できます。
$ ifconfig
eno2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet x.x.41.32 netmask 255.255.255.0 broadcast x.x.41.255
inet6 fe80::5a20:b1ff:fe07:b375 prefixlen 64 scopeid 0x20<link>
ether 58:20:b1:07:b3:75 txqueuelen 1000 (Ethernet)
RX packets 2851252 bytes 241129524 (241.1 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 6722211 bytes 9634863759 (9.6 GB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0x92c00000-92cfffff
eno2:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet y.y.4.36 netmask 255.255.255.224 broadcast y.y.4.63
ether 58:20:b1:07:b3:75 txqueuelen 1000 (Ethernet)
device memory 0x92c00000-92cfffff
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 x.x.41.1 0.0.0.0 UG 0 0 0 eno2
x.x.41.0 0.0.0.0 255.255.255.0 U 0 0 0 eno2
yy4.36 にはデフォルトゲートウェイはありません。
ブリッジネットワーキングを使用するように仮想マシンを簡単に設定し、そのアドレスをyy4.36に設定できます。しかし、インターネットを介してどのようにアクセスできますか?
eno2:0を削除してから、仮想マシンにアドレスとしてyy4.36を使用し、デフォルトゲートウェイとしてxx41.1を使用する必要があることを知らせる必要があります。
しかし、どうすればいいですか?
これはうまくいきません:
$ route add -net default gw x.x.41.1
SIOCADDRT: Network is unreachable
これは、仮想マシンにxx41.*にアドレスがないためです。
編集する
解決策を作成しました。仮想マシンのホストネットワークに別のインターフェイスを追加します。それから:
ifconfig enp0s8 192.168.56.2
ifconfig eth0 y.y.4.36 netmask 255.255.255.224
route add -net default gw 192.168.56.1
# Force the src address to be y.y.4.36 and not 192.168.56.2
ip route replace default via 192.168.56.1 dev enp0s8 src y.y.4.36
ホストマシンから:
route add -host y.y.4.36 gw 192.168.56.2
したがって、VirtualBoxのホストネットワーク(192.168.56.0/24)を介してトラフィックをルーティングします。
うまくいくようですが、仮想マシンにyy4.36を提供するより伝統的な方法があると思います。
答え1
私が正しく理解した場合:
Your host is x.x.41.32 netmask 255.255.255.0 (ie, net is x.x.41.0 to x.x.42.255),
and the gateway (to internet) is x.x.41.1.
you want to setup a lan for your vms on x.x.4.36 netmask 255.255.255.224
(hence on a subnet with 32 ips, x.x.4.32 to x.x.4.63 and that vm is x.x.4.36).
そのサブネットがインターネットにアクセスできるようにするには、複数の可能性の1つ(TIMTOWTDI ...):仮想マシンの1つ(xx4.36?またはホスト?または他のもの)には2つのインターフェイスが必要です。 xx4.z の 1 つである xx41.y ではルーティングがイネーブルになっており、デフォルトゲートウェイは xx41.1 です。他の仮想マシンは、その特定の仮想マシン(またはホスト)のxx4.z IPをデフォルトゲートウェイとして使用する必要があります。