- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
浅谈回流
浅谈回流[转载自天下网盟]
浅谈回流----作者漂流瓶
“回流”,光这个名词我听说也没多久的,不知是哪里给的这么一个雅号。以前知道在映射上,有这么个事情。但一直以来也没个名称,也不好简单直观的描绘,现在总算有个俗称了,虽然只有八成的贴切,也是好的
回流是什么?最简单的一个实例:网吧内网一台主机建了个WEB服务站点端口80,然后在网关(其内网地址是、公网地址为)上映射80端口到的80端口,这样INTERNET上就能以:80的地址访问到的WEB站点了。然后出现了个问题,在同网吧的另一台电脑上,键入:80,却无法访问该WEB站点。就这个现象,我们就称之为“不支持回流”了,这里指的是网关上的映射方式不支持回流,所以说“回流”一说,是针对映射方式而言的。
现在我们来看常规情况下,是为什么会发生这种情况的我以前对iptables特别感兴趣的时候,曾对这个问题非常迷惑不解,直到去年为了考试,学习网络基础的时候才搞明白这个事情
过程如下:要请求访问的80端口,根据它掌握的路由表,它本身是不知道电脑在哪里的,所以把将这个数据包发送给它的默认路由,即电脑。注意:这个数据包的源地址是、源端口假设是1025、目标地址是、目标端口是80、SYN标志位为1、这是建立TCP连接的第一次握手。
如果“把目标地址为的数据包发给了”你听起来觉得有点矛盾,那么我解释一下:其实这个数据包的目标IP地址是,目标MAC地址却是的
电脑接收到了这份数据包(因为它的身份是路由器,所以允许接收和转发目标地址不是自已、MAC地址却是自已接口MAC地址的数据包),它分析这个数据包的目标地址,发现这个数据包是需要中转到电脑:80去的,于是它把这个数据包转发给了电脑:80。注意:这个数据包的源地址是、源端口是1025、目标地址为、目标端口为80、SYN标志位为1。我们要注意这个数据包在转发后发生了变化了,即目标地址变了。电脑顺利接到了数据包,它马上作出回应,发送一个数据包给电脑。注意:这个数据包的源地址是、源端口是80、目标地址、目标端口为1025、SYN标志位为1、ACK标志位为1、这是建立TCP连接的第二次握手。电脑顺利接到了数据包,然而它发现这是一个来自:80的回应,因为ACK标志位值为1摆在那里呢。它想不起来什么时候给:80这个目标对象发送过SYN请求,它认为这是一个错误的数据包,于是决定把这个数据包丢弃。然后继续等待:80的回应,一直等到超时。而电脑这边,它等:1025的第三次握手请求包发送过来,以便建立一个TCP的连接。同样也没有结果,一直等到超时。三次握手在规定的时间内没有完成,访问宣布流产了。
那么怎么样才能正常访问呢?也就是说怎么样形成“回流”呢?玄机在于电脑把第一次握手的那个数据包在转发时,不仅要修改目标地址和端口,也要修改源地址和端口,我们来看一下情况会有什么不同:电脑接收到了这份数据包(因为它的身份是路由器,所以允许接收和转发目标IP地址不是自已、MAC地址却是自已接口MAC地址的数据包),它分析这个数据包的目标地址,发现这个数据包是需要中转到电脑:80去的,于是它把这个数据包通过自已的5201端口转发给了电脑:80,并在内存里面记录下来了,:5201已定位给了:1025。注意:这个数据包的源地址是、源端口是5201、目标地址为、目标端口为80、SYN标志位为1。电脑顺利接到了数据包,它马上作出回应,发送一个数据包给电脑。注意:这个数据包的源地址是、源端口是80、目标地址、目标端口为5201、SYN标志位为1、ACK标志位为1、这是建立TCP连接的第二次握手。电脑顺利接到了数据包,检查内存记录发现,这个数据包真正的收货人是:1025,于是它把这个数据包转发给。注意:这个数据包的的源地址是、源端口为80、目标地址为、目标端口为1025。我们要注意这个数据包在转发后发生变化了,即源地址变了。这很重要!为什么会变,因为在它心目当中,:80早已定位给了:80,映射规则使然。电脑顺利接到了数据包,发现期待已久的:80终于有了回音,它兴奋不已的发出第三次的握手请求。注意:这个数据包的源地址是、源端口是1025、目标地址是、目标端口是80、ACK标志位为1、这是建立TCP连接的第三次握手。跟前面的数据包一样,这个数据包会从那里中转给
以后:80和:1025之间来往通信的数据包,全部由负责中转,“回流”构成了
具体在软件上的实现,不是我的事了现在的“回流”应用常见于私服Linux里的iptables可以增加一条规则来实现对回流的支持很多硬件路由器不用设置就内建支持的Win2K的ICS/NAT内建的映射是标准DNAT,同样是不支持的、除非用第三方工具CC、RouterOS听说是支持的,不懂,没空去整过SW现在还有好多
您可能关注的文档
最近下载
- 党员先锋队创建实施方案范文(精选6篇).docx VIP
- 《jjg692-1999-数字式电子血压计(静态)检定规程》.pdf
- 万维生物核心知识点.pdf
- GB 44263-2024 电动汽车传导充电系统安全要求.pdf
- 2024年考研中医综合真题及答案.doc
- 多层隔热组件接地装置.pdf VIP
- 中英对照 USP美国药典 1504 化学合成法多肽原料药起始物料的质量属性0109.docx
- 工程招标文件课件.pptx
- 中职英语(高教版)基础模块一Unit4 School Life Warming up优质教学课件PPT.pptx VIP
- 24DX002-1建筑电气与智能化通用规范图示.pdf VIP
文档评论(0)