什么是SNAT
2024-09-03 16:07:29
SNAT是源地址转换,其作用是将ip数据包的源地址转换成另外一个地址,可能有人觉得奇怪,好好的为什么要进行ip地址转换啊,为了弄懂这个问题,我们要看一下局域网用户上公网的原理,假设内网主机A(192.168.2.8)要和外网主机B(61.132.62.131)通信,A向B发出IP数据包,如果没有SNAT对A主机进行源地址转换,A与B主机的通讯会不正常中断,因为当路由器将内网的数据包发到公网IP后,公网IP会给你的私网IP回数据包,这时,公网IP根本就无法知道你的私网IP应该如何走了。所以问它上一级路由器,当然这是肯定的,因为从公网上根本就无法看到私网IP,因此你无法给他通信。为了实现数据包的正确发送及返回,网关必须将A的址转换为一个合法的公网地址,同时为了以后B主机能将数据包发送给A,这个合法的公网地址必须是网关的外网地址,如果是其它公网地址的话,B会把数据包发送到其它网关,而不是A主机所在的网关,A将收不到B发过来的数据包,所以内网主机要上公网就必须要有合法的公网地址,而得到这个地址的方法就是让网关进行SNAT(源地址转换),将内网地址转换成公网址(一般是网关的外部地址或者设置一个虚拟的外网地址),所以大家经常会看到为了让内网用户上公网,我们必须在routeros的firewall中设置snat,俗称IP地址欺骗或伪装(masquerade)
内网用户192.168.1.100访问tw.yahoo.com,通过snat将内网地址转换成Public IP
最新文章
- [知识点]字符串Hash
- JNI和NDK编程
- Java Socket长连接示例代码
- Atitit.架构设计趋势 设计模式 ---微服务架构  soa
- wamp2.5 不能运行在win2003的解决方法
- Source Tree for MAC1.6
- 【jqGrid for ASP.NET MVC Documentation】.学习笔记.6.分层
- 函数重载二义性:error C2668: 'pow' : ambiguous call to overloaded function
- IOS--工作总结--post上传文件(以流的方式上传)
- Vue2.0 生产环境部署
- UGUI血条
- Node.js 反序列化漏洞远程执行代码(CVE-2017-5941)
- [日常工作] Linux与Windows的连接访问以及数据共享等方法 vncserver smb xshell xftp winscp mount等
- java删除文件操作代码备忘
- 了解java虚拟机—非堆相关参数设置(4)
- 第三百二十六节,web爬虫,scrapy模块,解决重复ur——自动递归url
- BZOJ3473: 字符串【后缀数组+思维】
- 2018.10.15 NOIP训练 百事世界杯之旅(期望dp)
- mysql 索引相关问题
- JS中call和apply区别有哪些 记录
热门文章
- PyTorch基础——词向量(Word Vector)技术
- 吴裕雄--天生自然 PYTHON3开发学习:JSON 数据解析
- MyBatis从入门到精通(第4章):MyBatis动态SQL【if、choose 和 where、set、trim】
- C# 创建、部署和调用WebService的简单示例 (转)
- servlet 上传文件
- [LC] 273. Integer to English Words
- day43-线程概念
- Descriptive Measures for Populations|Parameter|Statistic|standardized variable|z-score
- WOW.js——在页面滚动时展现动感的元素动画效果
- 九成AI企业亏损,人工智能商业落地为何这么难?