flameboy的博客

喜欢交朋友,希望各位大佬们能多指点本菜鸟,相互交流、相互学习。

DNAT是什么?

SNAT,DNAT就是对数据包的源地址和目的地址进行修改,并且保存修改前后的映射关系,并且根据需要进行还原操作。
SNAT:出去的时候改 变原地址(snat),回来的时候改变目的地(un_snat)。
DNAT:进来的时候改变目的地址(dnat),出去的时候改变源地址 (un_dnat)。例如回环,就用到了SNAT和DNAT。

例如:
src 192.168.1.2(client) ,dnat 10.14.11.177(firewall),dst 192.168.2.2(http server),添加回环规则后,从src对10.14.11.177进行请求,然后转到dst,随后进行相反操作,最后src客户端收到源为 10.14.11.177,目的为自身的数据包,因此会正确接收。

过程:

1 首先pre,进行目的地址的转换,开始: 192.168.1.2-》10.14.11.177 ,

转换后:192.168.1.2 》192.168.2.2(pre)

2 然后post,进行源地址的转换,到达真正的http server;post:192.168.1.2 》192.168.2.2,
转换后:10.14.11.177(post)》192.168.2.2

3 dst进行请求回复,进行pre的反操作,进行源地址的转换: 192.168.2.2》10.14.11.177,
转换后:10.14.11.177(un_pre)》10.14.11.177

4 进行post的反操作,进行目的地址的转换:进入un_post:10.14.11.177》10.14.11.177,
转换后:10.14.11.177》192.168.1.2(u_post)

阅读更多
个人分类: 网络常见问题
上一篇有一台服务器,通过netstat -an命令看到大量状态SYN_RCVD的连接,可能发生的原因是什么?
下一篇ping如果出现“no route to host”,“目的主机不可达”等错误原因?
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭