iptables 程式在作 SNAT 或 MASQUERADE 時, 就是改那裡. 且是 routing process 處理完之後才改的.
解開 tcp packet 第 17 到 32 個 bit 與 ip packet 的第 128 到第 159 個 bit , 就是 destination socket .
那是 DNAT 修改之處. 且是 routing 之前改的.
有空, 再看看我前面貼的貼子吧.
最近很烦躁~哈~
恩~晚上下班好好学习学习..
Thanks...
要不, 說話可能很容易衝動的呢~~~ 小心.
我还是心里没底SNAT和MASQUERADE都是替换了SOURCE部分,而且是在路由之后才替换的,但是我还是不明白
如果做的是NAT,ISP那边负载是不是太大了?
如果做的是路由,按理说私网IP是不能路由到公网上的,但是有可能路由到ISP的出口之前,然后呢?感觉还要NAT
请网兄继续指点一下 :em16:
router 的 wan 端是一個 private IP, 而 lan 端是一個 public IP 連著一個劃分下來的 subnet .
若是這樣的話, 其實一點也不難理解.
我們很多時候在 wan-wan 兩個 router 之間用 private IP 來連.
只要 router 收到 packet 能知到 which is next hop 就行了.
至於 packet 到了 next hop , 那是目前的 router 不必管的.
而是 next hop 去重復下一個 next hop 的判定.
假設:
你的 subnet 是 public IP, 接到 router 的 LAN port.
然後 router 的 wan 與 isp router lan port 之間接一個 private IP,
再, isp router 的 wan 再接一個 public 就到 internet 去.
你的 host 只要知到 gw 是你的 router lan port,
然後 router 轉到 isp (不必管它是 public 還是 private IP)
isp 轉到 internet.
這是出去的 packet ...
回來的:
internet 給你的 subnet 的 packet 路由到 isp.
isp 再轉到你的 router (同樣, 別管它是 public 還是 private)
你的 router 轉到 host .
完成!
這裡並沒用到任何的 nat 處理哦...
我想, 這類問題, 轉到 network 版去問, 會有很多人可以回答你.
只是, 我不常去那邊逛啦...
郁闷啊~~~~《tcp/ip协议详解》这本书的路由部分看了好长时间都没看懂...可能那时候心里太乱了吧...等过一阵再看看
伪装一个连接意味着,我们自动获取网络接口的IP地址,而不使用--to-source 。当接口停用时,MASQUERADE不会记住任何连接,这在我们kill掉接口时是有很大好处的。如果我们使用SNAT target,连接跟踪的数据是被保留下来的,而且时间要好几天哦,这可是要占用很多连接跟踪的内存的。一般情况下,这种处理方式对于拨号上网来说是较好的(这有利于已有那连接继续使用)。如果我们被分配给了一个不同于前一次的IP,不管怎样已有的连接都要丢失,但或多或少地还是有一些连接记录被保留了
即使你有静态的IP,也可以使用MASQUERADE,而不用SNAT 。不过,这不是被赞成的,因为它会带来额外的开销,而且以后还可能引起矛盾,比如它也许会影响你的脚本,使它们不能用。
分析比较全面, 非常赞成。
[/quote:b555afb8e6]
后半句不是很理解
这个解释比较满意 :mrgreen:
本文关键:SNAT与MASQUERADE的区别的一点疑惑
相关方案
- 如何让Linux支持NTFS分…
- 一個不錯的資源網站,特別推荐O…
- PHP开发学堂:扩展你的PHP…
- 三言两语说 RPM…
- Linux系统命令分类详解(2…
- 三言两语说 NAT…
- redflag认证系统管理部分…
- 红旗:Liux认证体系与证书样…
- 如何解除LILO自动开机程序…
- MRTG为交换机各端口当前流量…
- DHCP分配地址时的顺序问题…
- oracle9 在 linux…
- package managem…
- LPI认证考试介绍…
- pinnacle studio…
- Linux系统命令分类详解(3…
- 如何在硬碟建置Linux系统之…
- 如何给iptables添加模块…
- RedHatLinux AS3…
- TuoboLinux认证介绍…