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

IP之NAT(一)

时间:2015-02-15 12:15:50      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:linux   nat   ip   


4.2.4 NAT

私有地址如下:

10.0.0.0 – 10.255.255.255 (10.0.0.0/8),

172.16.0.0 – 172.31.255.255 (172.16.0.0/12),

192.168.0.0 – 192.168.255.255 (192.168.0.0/16)

 

NAT对于ICMP协议的影响

对于icmp协议,不仅icmp packetheader的地址需要做nat,它的payload也需要做nat,因为payload中有错误信息相关的IP address。然而,任何的改变都需要重新计算icmp headerIP headerchecksum。对于ICMP echo request/reply,里面有个query identifier用来标示一个echo message,而这个query identifier对应于TCP port,所以对于port nat,也需要改变该query identifier,故需要计算icmp headerchecksum

 

NAT对于FTP协议的影响

问题来自于FTP PORT command  PASV response,因为这两个命令包含用ASCII编码的IP/port pairs,所以做nat时,这些ASCII编码的IP/port pairs也需要转换,而转换后的ip/port pairs可能改变了长度,这样会导致整个packetpayload 长度发生变化,这会影响到tcp的序列号,所以nat后,需要改变tcp的序列号和应答号,还有校验和。


(待续)

 [此为原创,转载请标明出处,谢谢!]


IP之NAT(一)

标签:linux   nat   ip   

原文地址:http://blog.csdn.net/wfhh000/article/details/43833811

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