filter表的核心功能:主机防火墙

nat表的核心功能:IP及端口的映射转换

   1. 共享上网   <== 以下是配置共享上网

   2. 端口上网

                            

实验环境配置需求前期准备

网关服务器:

1)物理条件具备双网卡,建议eth0外网地址(这里是10.0.0.61),eth1内网地址(这里是         172.16.1.61,内网卡不配gw)。

2)确保服务器网关B要可以上网(B上网才能代理别的机器上网),可以通过ping www.baidu.com进行测   试。

3)内核文件/etc/sysctl.conf里开启转发功能

  vim /etc/sysctl.conf  --> -->sysctl -p(生效)

4)iptables的filter表的FORWARD链允许转发

  [root@m01~]# iptables -nL
  ChainFORWARD (policy ACCEPT)  
  target     prot optsource               destination

5)不要filter防火墙功能,共享上网,因此最好暂时停掉防火墙测试(/etc/init.d/iptables stop)


=================== 服务端配置 ===================

1. 使用iptables防火墙实现NAT转发

  第一种:  <-- 建议

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1            
sysctl -p

第二种:

echo 1 >/proc/sys/net/ipv4/ip_forward


2. 开启防火墙功能

/etc/init.d/iptables start


3. 清除防火墙相关的规则

iptables -F
iptables -X
iptables -Z
iptables -nL


4. 加载iptables内核模块,执行并放入rc.local

载入内核模块

modprobe ip_tables
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_state


[root@m01 ~]# lsmod|egrep ^ip        


ip_tables               17831  2 iptable_nat,iptable_filter
ipt_REJECT              2351  0
ipv6                    335589  274


(5)局域网共享上网命令(任选一种即可)

方法1:适合于有固定外网地址的

iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -oeth0

# 说明: -s 172.16.1.0/24:办公司IDC内网网段

  -o eth0:为网关的外网网卡接口

  -j SNAT --to-source 10.0.0.61:是网关外网卡IP地址

# 范例:

iptables -t nat -A POSTROUTING -s 10.0.1.0/255.255.240.0 -o eth0 -j SNAT --to-source 124.42.60.11-124.42.60.16


[root@m01 ~]# iptables -t nat-nL
Chain PREROUTING (policyACCEPT)
target     prot opt source               destination        
 
Chain POSTROUTING (policyACCEPT)
target     prot opt source               destination        

 
Chain OUTPUT (policy ACCEPT)
target    prot opt source              destination

方法2:适合变化的外网地址(ADSL)

[root@m01 ~]# iptables -t nat -A POSTROUTING -s172.16.1.0/24 -j MASQUERADE    #<== 伪装
 
[root@m01 ~]# iptables -t nat-nL
Chain PREROUTING (policyACCEPT)
target     prot opt source               destination        
 
Chain POSTROUTING (policyACCEPT)
target     prot opt source               destination        
       
 
Chain OUTPUT (policy ACCEPT)
target    prot opt source              destination

为什么用POSTROUTING?

  企业共享上网

 1)办公司共享上网(网关要有外网IP),否则用路由(zebra)。

 2)IDC内网机器上网。

 

=================== 客户端配置 ===================

(1)配置内网IP的网关

vim /etc/sysconfig/network-scripts/ifcfg-eth1
GATEWAY=172.16.1.61                                       
# 临时添加网关:route add default gw172.16.1.61


(2)修改DNS配置文件,设置网关

[root@web01 /]# vim /etc/resolv.conf
nameserver 10.0.0.2


(3)重启网卡使修改的网卡配置文件生效

/etc/init.d/network restart
route -n


(4)关闭外网IP

ifdown eth0


(5)测试网关是否可以通

ping 10.0.0.2


(6)如果可以ping通的话,则ping域名测试,但是不要忘记将外网的IP地址关闭

ping www.baidu.com