UCAS-Network-Lab-9-Nat
首先运行参考标程并且抓包,监听nat的两个端口来分析其工作原理。
首先是snat。分析出来的过程为:h1发出wget请求,其端口号为12345(italk),经过nat翻译之后,发出去时ip地址被翻译为公网地址,同时端口被翻译为一个分配的端口号40580。
然后公网的h3认为这就是h1的ip地址以及端口,按照原样访问之,所以返回的包的目的地址就是这个地址,同时端口号也是40580。nat收到这个包之后,将其ip地址翻译为h1的ip地址,端口号翻译为12345,然后发给h1。
接下来是dnat。分析出来的过程为:h3发出wget请求,使用的是公网的ip和端口号,经过nat,发送的目标则也使用公网ip和公网的端口号8001,nat将该ip以及端口号翻译为相应的私网ip(h2)以及端口号(8000),从而发送给h2的相应端口。
所以综上,总是可以总结出来一个原则:从nat出去的包,和nat收到的包,都是使用公网的ip以及公网的端口号,而公网的端口号是要由nat自身来分配管理的。换言之,nat对公网隐藏了私网的所有细节。