标签:linux nat
主机名 服务器/端 外网IP 内网IP
nat-s Server 10.0.0.41 172.16.1.41
nat-c Client - 72.16.1.31
匹配内网172.16.1.0/24网段的IP,想上外网,可以全部把数据包丢给10.0.0.41这个地址。
iptables -t nat -A POSTROUTING -s172.16.1.0/255.255.255.0 -j SNAT --to 10.0.0.41
(1) 首先查看是否已经打开,如果值为1,则说明已经打开
(2) 否则需要修改配置文件 /etc/sysctl.conf,找到该参数,使其变为:net.ipv4.ip_forward = 1
(3) 然后运行:sysctl -p
[root@nat-s ~]# sysctl -a |grep ‘net.ipv4.ip_forward‘ #<==查看内核转发是否打开 net.ipv4.ip_forward = 0 #<==0代表关闭,1代表打开 [root@nat-s ~]# sed -i ‘s#net.ipv4.ip_forward =0#net.ipv4.ip_forward = 1#g‘ /etc/sysctl.conf #<==sed命令一键修改 [root@nat-s ~]# sysctl -p #<==使内核参数生效 [root@nat-s ~]# sysctl -a |grep‘net.ipv4.ip_forward‘ #<==再次验证 net.ipv4.ip_forward = 1
[root@nat-c ~]# cat>>/etc/sysconfig/network-scripts/ifcfg-eth1<<EOF #网关与DNS > GATEWAY=172.16.1.41 > DNS1=8.8.8.8 > DNS2=114.114.114.114 > EOF [root@nat-c ~]# tail -3/etc/sysconfig/network-scripts/ifcfg-eth1 #验证 GATEWAY=172.16.1.41 DNS1=8.8.8.8 DNS2=114.114.114.114 [root@nat-c ~]# ifdown eth0 #先把其它的网卡暂时关闭 [root@nat-c ~]# ifdown eth1 && ifup eth1 #使eth1配置生效,多执行几次这条命令! [oldboy@nat-c ~]$ route -n #查看网关 [oldboy@nat-c ~]$ cat /etc/resolv.conf #查看DNS nameserver 114.114.114.114 nameserver 8.8.8.8
能ping通谷哥服务器的地址,说明能上网!
用traceroute命令可以看到数据包转发的过程,想出外网,必须找网关,网关再把数据包丢给外网卡,外网卡就能帮我们出外网了。
能正常解析域名,说明能正常打开网页!
本文出自 “陈发哥007” 博客,请务必保留此出处http://chenfage.blog.51cto.com/8804946/1834349
标签:linux nat
原文地址:http://chenfage.blog.51cto.com/8804946/1834349