VM不能ping主机这两个交换机和路由器远离通过NAT

问题描述:

我有一个Linux VM(卡莉)这是连接到一台主机只能切换VM不能ping主机这两个交换机和路由器远离通过NAT

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 
    inet 192.168.0.40 netmask 255.255.255.0 broadcast 192.168.0.255 

接口已启动,接口文件看起来像此

auto eth0 
iface eth0 inet static 
    address 192.168.0.40 
    netmask 255.255.255 
    gateway 192.168.0.254 
    dns-nameservers 8.8.8.8 

开关被连接到一个Ubuntu服务器VM具有伪装启用到192.168.0.0/24网络NAT,并且经由桥接切换到实际的主机,其运行Ubuntu 16.04

连接

NAT规则是在POSTROUTING链,它是这样的

Chain POSTROUTING (policy ACCEPT 20 packets, 1440 bytes) 
pkts bytes target  prot opt in  out  source    destination   
0  0 MASQUERADE all -- *  ens33 192.168.0.0/24  0.0.0.0/0 

和接口文件在服务器机器看起来像这样

# The loopback network interface 
auto lo 
iface lo inet loopback 

# The primary network interface 
auto ens33 
iface ens33 inet static 
    address 172.16.23.100 
    netmask 255.255.0.0 
    gateway 172.16.0.254 
    dns-nameservers 8.8.8.8 
#iface ens33 inet dhcp 


#Gateway for LAN1 - 192.168.0.0/24 
auto ens38 
iface ens38 inet static 
    address 192.168.0.254 
    netmask 255.255.255.0 

主机上的路由表看起来像这样

default via 172.16.0.254 dev enp3s0 
169.254.0.0/16 dev enp3s0 scope link metric 1000 
172.16.0.0/16 dev enp3s0 proto kernel scope link src 172.16.0.6 

现在我试图ping从Kali机(从192.168.0.40到172.16.0.6)的主机,但ping不通过,我在主机上做了tcpdump在与192.168.0.40作为主机的唯一接口上,但它不接收任何流量。由于某些原因,NAT规则未被使用。

我可以使用Kali ping默认网关和服务器/路由器虚拟机,但主机ping不通过。我究竟做错了什么?

我认为应该发生的事情是数据包通过Kali的默认网关进入服务器,一旦它在服务器机器中被转换为ens33的地址,并从那里进入主机,主机将发送它回到ens33,因为这应该是源IP,但显然这不是发生

+0

你的问题应该被移到SuperUser(或ServerFault,它取决于),因为它不是一个编程/编程语言相关的问题 –

+0

我该怎么做?只要删除它并发布在那里? – Muffinator

+0

为什么要在8分钟前将它发布到那里,你说它现在有效? –

我在关注的东西坏了,我把NAT规则作为eth33代替ens33,固定它和它的作品现在

+1

这意味着你可能在错误的业务。对于编程,你真的需要对这样的事情进行分析。 –

+1

@RonMaupin ...不像编程和网络配置不同的你自己 – SomeWittyUsername