阅读:1459回复:7
start请进
我做了一个NAT,内网的一台机可以通过我的NAT到外网,没有问题。
但有多台时,进来的包不知道根据什么转发到各机,有人说根据远端ip 和 端口号,但我觉的这不是很可靠,想听听你的建议。 |
|
沙发#
发布于:2004-03-25 09:20
我没有实际经验,但是根据我的学习,NAT分为源NAT和目的NAT,你的情况属于源NAT,源NAT分为NAT(地址转换)和NAPT(地址端口转换),
如果你用NAT转换不行的话,可以尝试使用NAPT试试,如果可以的话,也给我讲讲. |
|
|
板凳#
发布于:2004-03-25 09:28
我认为只要记录各HOST使用的PORT就可以了,何必要转换。
能提供点资料吗。 |
|
地板#
发布于:2004-03-25 11:48
我做了一个NAT,内网的一台机可以通过我的NAT到外网,没有问题。
但有多台时,进来的包不知道根据什么转发到各机,有人说根据远端ip 和 端口号,但我觉的这不是很可靠,想听听你的建议。 --------- 一个TCP连接不是有四个元素确定吗? 假设内网机器A发出POP3连接请求,A:[ 163.com,21 ], 这个请求到达NAT之后,NAT软件把IP包的源IP和端口都改成本机的IP和端口,比如改成NAT_IP,NAT_PORT,然后NAT在内部状态表中添加下面跟踪项:STATE_TRACK[ SOURCE_MAC_ADDR,NAT_IP,NAT_PORT,163.com,21 ]。 当163.com回应时,那个IP包的源IP地址和源端口必定是163.com和21,目的IP地址和端口必定是NAT_IP,NAT_PORT, 这时候你只需要搜索一下状态表就可找到相应的跟踪项,再根据里边的SOURCE_MAC_ADDR就可以确定转发包到内网的哪台机器。 =========== 《IP地址管理与子网划分》这本书有一章专门讨论了NAT地设计,非常好! |
|
地下室#
发布于:2004-03-25 12:01
给分,希望有电子版,有吗
|
|
5楼#
发布于:2004-03-25 12:35
http://www.chinaz.com/download/s/1603.asp
只有前4章,恰好第四章讲述NAT:) |
|
6楼#
发布于:2004-03-25 12:48
很好,感谢ING
|
|
7楼#
发布于:2004-03-25 13:00
谢谢楼上给分
|
|
|