KVM Ubuntu Guest无法通过桥接networking连接到互联网

我有Ubuntu 14.04(64位)+两个网卡的KVM主机:
– eth0连接到“公共”networking
– eth1连接到具有私有IP地址范围的br0网桥

从主机我可以访问互联网,ping VM Guest并通过SSH连接到它。
从VM Guest我只能ping主机,但无法访问互联网,无法ping通google.com

请帮助我将VM Guest连接到互联网,设置如下:


主持人:

的/ etc /networking/接口

汽车
 iface lo inet loopback

 auto eth0
 iface eth0 inet static
  地址192.168.2.60
  networking掩码255.255.255.0
  网关192.168.2.254
   dns-nameservers 8.8.8.8

 auto eth1
 iface eth1 inet手册

自动br0
 iface br0 inet static
  地址10.0.0.1
  networking掩码255.255.255.0
   bridge_ports eth1
   bridge_stpclosures
   bridge_maxwait 0
   bridge_fd 0

  #自动创build并销毁桥。
 pre-up brctl addbr br0
 ip链路设置dev br0 up
 post-up / usr / sbin / brctl setfd br0 0 addif br0 eth1
降低brctl delbr br0

KVMnetworking被定义为:

<network> <name>br0-net</name> <uuid>9d24b473-0b4d-4cfa-8b12-7bf267d856ae</uuid> <forward mode='bridge'/> <bridge name='br0'/> </network> 

#sysctl -p /etc/sysctl.conf

  net.ipv4.ip_forward = 1
  net.bridge.bridge-nf-call-ip6tables = 0
  net.bridge.bridge-nf-call-iptables = 0
  net.bridge.bridge-nf-call-arptables = 0

#route -n

内核IP路由表
目标网关Genmask标志度量参考使用Iface
 0.0.0.0 192.168.2.254 0.0.0.0 UG 0 0 0 eth0
 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

#iptables -t nat -vnL

链PREROUTING(策略接受0包,0字节)
  pkts字节目标人选退出源目的地

链INPUT(策略ACCEPT 0包,0字节)
  pkts字节目标人选退出源目的地

链OUTPUT(策略ACCEPT 0包,0字节)
  pkts字节目标人选退出源目的地

链POSTROUTING(策略ACCEPT 0包,0字节)
  pkts字节目标人选退出源目的地


在VM Guest上:

的/ etc /networking/接口

汽车
 iface lo inet loopback

 auto eth0
 iface eth0 inet static
  地址10.0.0.11
  networking掩码255.255.255.0

客户xml被定义为

 <interface type='bridge'> <mac address='52:54:00:6b:93:69'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> 

#route -n

内核IP路由表
目标网关Genmask标志度量参考使用Iface
 0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

#iptables -t nat -vnL

链PREROUTING(策略接受0包,0字节)
  pkts字节目标人选退出源目的地

链INPUT(策略ACCEPT 0包,0字节)
  pkts字节目标人选退出源目的地

链OUTPUT(策略ACCEPT 0包,0字节)
  pkts字节目标人选退出源目的地

链POSTROUTING(策略ACCEPT 0包,0字节)
  pkts字节目标人选退出源目的地

Guest虚拟机的Ping KVM Host可以工作在10.0.0.1和192.168.2.60上:

$ ping 10.0.0.1

 PING 10.0.0.1(10.0.0.1)56(84)字节的数据。
来自10.0.0.1的64字节:icmp_seq = 1 ttl = 64时间= 0.555ms

$ ping 192.168.2.60

 PING 192.168.2.60(192.168.2.60)56(84)字节的数据。
来自192.168.2.60的64个字节:icmp_seq = 1 ttl = 64时间= 0.772ms

从来宾ping不同的计算机192.168.2.3不起作用:

 --- 192.168.2.3 ping统计---
发送277个数据包,接收0个数据包,丢包率100%,时间276399ms

来自Guest的Ping google.com不起作用:

 ping:未知的主机google.com

我认为你错过了伪装的iptable规则

 iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE