在VirtualBox中如何利用NAT使guest 访问host及访问其他host
需要软件包uml-utilities
$sudo apt-get update
$sudo apt-get install uml-utilities
用virtualbox自带工具生成虚拟网络设备
$sudo VBoxTunctl-b -u <username> -t tap0
激活tap0
$sudo ifconfig tap0 up
为tap0 设置IP地址
$sudo ifconfig tap0 192.168.1.1 netmask 255.255.255.0
添加路由
$sudo route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 dev tap0
为tun设备设置权限
$sudo chmod 0666 /dev/net/tun
打开内核IP转发功能
$sudo echo "1" >> /proc/sys/net/ipv4/ip_forward
启动netfilter NAT功能
$sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
启动virtualbox 上的虚拟系统 时, 网络设为" Host interface" 网络设备名为 tap0
启动后将地址设为 192.168.1.xnetmask 255.255.255.0 gateway 192.168.1.1
也可以在HOST主机上启动DHCP服务监听tap0 , Guest 系统网络设为DHCP, 自动获取IP
这样Guest 系统访问Host 将通过tap0 设备, 访问外网则通过NAT将数据包转发到eth0
页:
[1]