- 或许题目更准确的表述是:Linux 下 iptables 在做端口转发时为啥不占用端口?
- 因为不占用端口,所以不能用 netstat 命令查看。
- iptables 表、链、规则图(默认filter表)
- OSI模型与TCP/IP模型
-
iptables 工作在 OSI 模型的2/3/4层,做端口转发时,只需要查看和转换运输层的端口号,并不需要占用。以下摘自《计算机网络(第5版)》(谢希仁)175页。
应当指出,从层次的角度看,NAPT 的机制有些特殊。
普通路由器在转发 IP 数据报时,对于源 IP 地址或目的 IP 地址都是不改变的。但 NAT 路由器在转发 IP 数据报时,一定要更换其 IP 地址(转换源 IP 地址或目的 IP 地址)。
其次,普通路由器在转发分组是,是工作在网络层。但 NAPT 路由器还要查看和转换运输层的端口号,而这本来应当属于运输层的范畴。也正因为这样,NAPT 曾遭受一些人的批评,认为 NAPT 的操作没有严格按照层次的关系。 - 相关阅读:端口转发(Linux/Windows)
*** walker 的流水账 ***
本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/2045517如需转载请自行联系原作者
RQSLT