在基本环境搭建这一节中,设置了一个本地网络,虚机只能访问host,无法访问外网,如果需要访问外网需要设置SNAT
iptables -t nat -A POSTROUTING -s 192.168.120.0/24 ! -d 192.168.120.0/24 -j MASQUERADE
这样虚机可以访问外网了
在ubuntu系统上面碰到的问题:
1.vnet0, virbr0 没有up,导致ping 不通:
解决办法: ip link set if up
2. 系统路由表里没有到virbr0的路由
ip route add 192.158.122.0/24 dev virbr0
3.iptables forward链默认是drop,导致ping 不通外网ip
iptables -N vm-service
iptables -A vm-service -j ACCEPT
iptables -A FORWARD -s 192.168.122.0/24 -j vm-service
root@alloc-ThinkPad-L480:~# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
DOCKER-USER all -- 0.0.0.0/0 0.0.0.0/0
DOCKER-ISOLATION-STAGE-1 all -- 0.0.0.0/0 0.0.0.0/0