yuchao 发表于 2018-2-10 23:47:01


                     
第一步:添加一个虚拟网卡
点击“网络连接”→“Add Network(添加网络)” → “External Network(外部网络)”→输入网卡的名称 →选择NIC0(注意这里要选能连接外网的网卡),建议将“自动将此网络添加到新虚拟机”,我将新添加的网络命名为“共享IP上网”

/d/file/news/4b35151f40e771cca04d35ba5da21e0a.png
/d/file/news/6336ec9b98610671eb2a6ebbf2e6d96f.png
第二步:为新添加的虚拟网卡配置ip地址
网络添加好后回到网络连接主界面,然后点击配置(Config),点添加ip地址,选择之前添加的网络,设置与虚拟机同网段内网IP地址(如192.168.10.1),也就是之后虚拟机要设置的网关地址。
/d/file/news/97b026d86cd837675ae73bf32be3a20a.jpg
第三步:配置NAT规则,让192.168.10.0网段的虚拟机可以上网:
(警告:如果已经配置过默认规则为deny的环境,iptables -F将使系统的所有网络访问中断,可以先iptables -P INPUT ACCEPT,再iptables -F)
iptables -F#清除防火墙的默认策略,这只适合在没有配置防火墙的环境中,否则所有网络访问中断
echo "1" > /proc/sys/net/ipv4/ip_forward #开启转发支持,默认是关闭的。
iptables -t -nat -A POSTROUTING -s 192.168.10.0/24 -o xenbr0 -j MASQUERADE   #让192.168.10.0网段的虚拟机可以上网,xenbr0是共享上网网口名称(用ifconfig查看)。
##iptables -t -net -A POSTROUTING -o xenbr0 -j SNAT --to-source 59.36.100.206    #不用操作仅供参考:此行今天与上一条效果一样,59.36这个是公网IP。
/etc/init.d/iptables save#保存防火墙配置,避免重启主机后规则失效
vi /etc/sysctl.conf#编辑/etc/sysctl.conf文件
将将net.ipv4.ip_forward项设置为1 ,保存并退出。 (开启转发支持,不受重启影响)
iptables -t -nat -A PREROUTING -p tcp --dport 10100 -j DNAT --to-destination 192.168.10.100:3389   #端口转发,外网直接用主机公网IP连接到虚拟机。

   
      
            ##说明:
            ##-A PREROUTING后可以指定共享网卡,如-APREROUTING -i xenbr0,其中xenbr0为共享网卡名(用ifconfig查看)。
            ##tcp不指定公网IP的数据,或指定具体的公网IP:tcp -d 59.36.100.206
            ##--dport 10100为公网连接端口
            ##192.168.10.100:3389为内网IP、连接端口
      
   

service iptables restart   #重启防火墙,使设置生效
iptables -t nat -L   #查看本机关于NAT的设置情况
页: [1]
查看完整版本: Xenserver单IP通过端口映射到内网IP,Xenserver共享IP上网