centos6 nat路由转发

时间:2024-03-28 18:33:03

 

多网卡设置

打开网卡

ifup eth5

centos6 nat路由转发

实验环境:

centos6.6(eth0外网口[VMnet8]       eth1内网口[VMnet1])

eth0(192.168.159.128/24 gw:192.168.159.254)

eth1(192.168.121.129/24 没有网关)

客户端(eth1)[VMnet1]

eth1:192.168.121.128/24  gw:192.168.121.129

1.nat服务器IP设置

eth0:

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

BOOTPROTO=dhcp

eth1(内网):

DEVICE=eth1

TYPE=Ethernet

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.121.129

NETMASK=255.255.255.0

内网客户端ip

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.121.128

NETMASK=255.255.255.0

GATEWAY=192.168.121.129

DNS1=114.114.114.114     ##访问外网必须设置dns否则不能解析

DNS2=8.8.8.8

 

       iptables-t nat -F #清除原有的nat表中的规则

    iptables -F #清除原有的filter有中的规则

    iptables -P FORWARDACCEPT #缺省允许IP转发

2.配置nat转发

iptables -t nat -F

方法1(静态ip):

iptables -t nat -A POSTROUTING -s 192.168.121.0/24 -j SNAT --to 192.168.159.128

方法2(动态ip):

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

说明:

-t nat:调用nat表,调用这个表说明遇到了产生新的连接的包

-A:改名了将一条规则附加到链的末尾

POSTROUTING:指定正当信息包打算离开防火墙时改变它们的规则

-o eth0:输出接口为eth0(及外网ip

-j SNAT:跳转,当满足SNAT规则变发生跳转

整句意思:当防火墙遇到产生新的连接的包,则在他要离开防火墙时改变它的源ip192.168.159.128eth0送出去。

 

临时转发生效:echo 1>/proc/sys/net/ipv4/ip_forward

5.2# vi /etc/sysctl.conf
将net.ipv4.ip_forward的值从0改为1,否则服务器将不会进行包转发操作
# sysctl –p  
保存执行

 

客户端:pingwww.163.com