從 vm 可以訪問網關,但網路中的其他機器不可訪問(目標主機不可訪問)
我是虛擬化領域的新手。我正在使用 esxi 來管理我的虛擬機。我有2個網路,一個是帶有網關的本地網路,
192.168.0.1
另一個是我係統的主網路。我有三個虛擬機,其中兩個被分配了靜態 IP 地址,它們也可以訪問本地網路。第三個 vm 沒有靜態 ips,但我想讓它訪問本地網路。我已將這兩個網路添加到 esxi 中的所有 vm,並更改了網路腳本文件,如下所示:vm1- 文件: ifcfg-ens224 :
TYPE=Ethernet BOOTPROTO=none NAME=ens224 DEVICE=ens224 ONBOOT=yes IPADDR=192.168.0.101 PREFIX=29 GATEWAY=192.168.0.1
VM2:文件:ifcfg-ens224:
TYPE=Ethernet BOOTPROTO=none NAME=ens224 DEVICE=ens224 ONBOOT=yes IPADDR=192.168.0.102 PREFIX=29 GATEWAY=192.168.0.1
VM3:文件:ifcfg-ens224
TYPE=Ethernet BOOTPROTO=none NAME=ens224 DEVICE=ens224 ONBOOT=yes IPADDR=192.168.0.103 PREFIX=29 GATEWAY=192.168.0.1
我能夠
192.168.0.101
從vm2 ping 並192.168.0.102
從vm1 ping 。但我無法192.168.0.103
從他們那裡 ping 通。而且我還能夠從vm3192.168.0.1
ping 網關( ),但是當我嘗試 ping 其他人(即:)時,它會導致Destination host unreachable錯誤。如果有任何想法提到我在這裡做錯了什麼或缺少什麼,我將不勝感激。192.168.0.101
您的主機有 IP 地址:192.168.0.103/29、192.168.0.102/29 和 192.168.0.101/29。整個 /29 子網包含 192.168.0.97-192.168.0.102 範圍內的地址。**IP 192.168.0.103/29 不是提供給主機的有效 IP,它是廣播 IP。**此外,網關的 IP 為 192.168.0.1,因此該子網中的主機不知道它,因為它位於完全不同的子網中。
分解它:
Address: 192.168.0.103 11000000.10101000.00000000.01100 111 Netmask: 255.255.255.248 = 29 11111111.11111111.11111111.11111 000 Wildcard: 0.0.0.7 00000000.00000000.00000000.00000 111 => Network: 192.168.0.96/29 11000000.10101000.00000000.01100 000 (Class C) Broadcast: 192.168.0.103 11000000.10101000.00000000.01100 111 HostMin: 192.168.0.97 11000000.10101000.00000000.01100 001 HostMax: 192.168.0.102 11000000.10101000.00000000.01100 110 Hosts/Net: 6 (Private Internet)
您需要重新設計網路地址以使 IP 地址有效。您可以使用一個子網計算器,例如這個。
對您來說最簡單的解決方案是將前綴從 29 更改為 24,以便範圍很寬,並且包含您已經為機器和網關設置的所有 IP 地址。