码迷,mamicode.com
首页 > 其他好文 > 详细

IDC 内网机器 通 过 iptables SNAT上网的配置方法

时间:2016-05-15 21:40:07      阅读:416      评论:0      收藏:0      [点我收藏+]

标签:

有三台机器, A 、B 、C,其中A机器有外网和内网IP,B和C只有内网,我们配置B和C二台机器通过A机器来上外网。

假设A机器 外网IP为: 60.12.13.14  内网IP为: 192.168.0.1

B机器IP为: 192.168.0.2

C机器IP为: 192.168.0.3

我们在B和C 二台机器上面,配置网卡配置文件,把A机器作为网关加进去。

修改 

  1. vi /etc/sysconfig/network-scripts/ifcfg-eth1

添加:

  1. GATEWAY=192.168.0.1
 然后重启二台机器网络

  1. /etc/init.d/network restart
修改二台机器的DNS配置文件,把A机器一样的DNS   加进来
  1. vi /etc/resolv.conf
添加:
  1. nameserver 202.99.96.68     #DNS根据自己服务器所在进行相应修改
保存即可。

我们在A机器上面配置 IPTABLES,添加SNAT

cd /usr/local/sbin/
vi iptables.sh
  1. #!/bin/sh

  2. iptables -t nat -I POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 60.12.13.14
  3. iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
  4. iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT
  5. /etc/init.d/iptables save
运行 脚本
  1. sh iptables.sh
这样iptables.sh脚本里面的内容就被保存到
  1. /etc/sysconfig/iptables
文件里面了。

在A机器上面,把IPTBALS 设置成开机启动就可以了。
  1. chkconfig --level 345 iptables on

在A机器上面,打开IP转发功能,修改sysctl.conf文件。
  1. vi /etc/sysctl.conf

  1. net.ipv4.ip_forward = 0
修改为:
  1. net.ipv4.ip_forward = 1
然后执行:
  1. sysctl -p
使之生效。

一切就绪之后,可以在B和C二台机器上面,访问外网,比如PING 外部IP和域名都通了。
方便通过YUM更新软件,下载软件啦。。

注: 

我在操作过程当中,是先拿A和B二台机器操作的,当B可以访问外网之后,发现通过A机器连不了C机器了,后来一直以为C机器有问题,就没有做通过B机器去连C机器的尝试。  之后通知机房重启,发现还是没有办法通过A去连C,之后机房接显示器通过本地物理机也是没有办法A连C,但IDC工程师有尝试可以通过B来连C,而且都是通的,才发现是因为调整内网上网的事,没有加网关造成的。 通过B连上C之后,加上网关,重启网卡,A就可以连C了,而且C也可以上网了。折腾了一会,留个纪念。万事多尝试
 

IDC 内网机器 通 过 iptables SNAT上网的配置方法

标签:

原文地址:http://www.cnblogs.com/swyft/p/5496030.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!