Chinaunix首页 | 论坛 | 博客
  • 博客访问: 661304
  • 博文数量: 125
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 962
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-14 10:20
个人简介

我是一只小白兔~

文章分类

全部博文(125)

文章存档

2017年(16)

2016年(108)

2014年(1)

我的朋友

分类: 网络与安全

2016-04-21 10:24:07

注意:本机路由转发的时候,才配置FORWARD转发链!

#iptables –A FORWARD –s 192.168.0.0/24 –j ACCEPT

#iptables –A FORWARD –d 192.168.0.0/24 –j ACCEPT

上面只是打通了局域网通过此机的Forward的通道,也就是打通了局域网与外网的链路,实际上并起不到任何的作用,因为在内核里面的转发文件并没有打开,因为我们要手工修改/proc/sys/net/ipv4/ip_forward 的值,将默认的0改为1!(1为打开,0为关闭)

例:#10.0.0.241 -----< 202.96.209.5

内网在访问外网的时候,包在到达外网后,外网不知道也没有办法回应此包给内网的主机,从而使得内外网无法实现通信;所以在网关上要在一个地址转换(NAT)将局域网地址翻译成互联网地址,它是通过NAT表(Network Address Trastation)来实现的。

#iptables –t nat –L –n



Prerouting是在routing之前的,在数据包进入routing之前就可以翻译数据包的目标地址,如果目标确定好了,发出去了,这时要经过postrouting链。( Prerouting是routing之前所经过的链,而postrouting是routing之后所经过的链 )

一、SNAT(源地址转换)



一个包如果目标不是自己,在通过Forward的时候,把源翻译成自己的地址。

源地址转换,只是把源的地址换成了自己的地址,它只能发生在postrouting上,不能发生在prerouting上。


二、DNAT(目标地址转换)




当一个包在进入routing之前,也就是在prerouting的时候,转换它的目标地址。

三、SNAT应用


10.0.0.241主机的网关为10.0.0.254,主机241发送的数据包都要经过254进行转换.

#iptables –t nat –A postrouting –s 10.0.0.0/24 –j SNAT --to-source 192.168.0.254

#iptables –t nat –L –n

在10.0.0.241上访问192.168.0.1   #ping 192.168.0.1 通的.

拨号网关: #iptables –t nat –A postrouting –s 10.0.0.0/24 –j MASQUERADE (伪装)


、DNAT应用



DNAT保护局域网

#iptables –t nat –A prerouting –d 10.0.254 –p tcp –dport 80 –j NAT --to-destination 192.168.0.1


总结:SNAT(源地址转换)发生在postrouting的时候;
    DNAT(目标地址转换)发生在prerouting的时候;




阅读(4580) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~