一内网上网
环境说明:
主机A:
1.宿主上网机器
eth0:10.0.0.8 #作为外网地址 eth1:172.16.1.8 #内网地址
外网网卡信息:
[root@web01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none IPADDR=10.0.0.8 NETMASK=255.255.255.0 DNS2=10.0.0.2 GATEWAY=10.0.0.2 DNS1=223.5.5.5 IPV6INIT=no USERCTL=no [root@web01 ~]# 内网卡的信息: [root@web01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 BOOTPROTO=none NETMASK=255.255.255.0 TYPE=Ethernet IPADDR=172.16.1.8 ONBOOT=yes IPV6INIT=no USERCTL=no [root@web01 ~]#
主机B:
需要上网的机器: 没有外网: 内网IP:172.16.1.31 #这个随意 [root@nfs01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 BOOTPROTO=none NETMASK=255.255.255.0 TYPE=Ethernet IPADDR=172.16.1.31 ONBOOT=yes IPV6INIT=no USERCTL=no [root@nfs01 ~]#
具体的配置:
主机A: 防火强关闭: /etc/init.d/iptables stop #关闭防火墙 echo 1 >/proc/sys/net/ipv4/ip_forward #开启内核转发 iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth0 -j SNAT --to-source 10.0.0.8 #匹配规则 主机B: echo "223.5.5.5">>/etc/resolv.conf #阿里的DNS比较快一些 route add default gw 172.16.1.8
两种配置的方式:
1.适合固定外网的IP iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth0 -j SNAT --to-source 10.0.0.8 #匹配规则 2.适合ADSl拨号的IP iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j MASQUERADE 伪装
二内网web映射让外网访问
A:服务器
内网服务器:172.16.1.31 [root@nfs01 html]# pwd /usr/share/nginx/html [root@nfs01 html]# lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nginx 2382 root 6u IPv4 32087 0t0 TCP *:http (LISTEN) nginx 2384 nginx 6u IPv4 32087 0t0 TCP *:http (LISTEN) [root@nfs01 html]# [root@nfs01 html]# curl 172.16.1.31 web 172.16.1.31
B:服务器
外网:10.0.0.8 内网:172.16.1.31 iptables -t nat -A PREROUTING -d 10.0.0.8 -p tcp --dport 80 -j DNAT --to-destination 172.16.1.31:80
本文出自 “砖家博客” 博客,请务必保留此出处http://wsxxsl.blog.51cto.com/9085838/1829313
原文地址:http://wsxxsl.blog.51cto.com/9085838/1829313