广东服务器大促销查看详情

一台服务器请求另一台时,用公网IP和内网IP访问时有什么区别?


    发布时间:2019-01-18 13:03:49  |   发布者:柳元元   | 访问次数:1404

  假定服务器A 的IP =10.1.1.2/24 服务器B的IP = 10.1.1.3/24,对内提供的服务 10.1.1.3:80 对Internet提供的服务 1.1.1.1:80 NAT设备LAN = 10.1.1.1/24, WAN = 1.1.1.1,NAT设备兼任局域网的网关 内...

假定服务器A 的IP =10.1.1.2/24

服务器B的IP = 10.1.1.3/24,对内提供的服务 10.1.1.3:80

对Internet提供的服务 1.1.1.1:80

NAT设备LAN = 10.1.1.1/24, WAN = 1.1.1.1,NAT设备兼任局域网的网关

一台服务器请求另一台时,用公网IP和内网IP访问时的区别?

内网IP访问

服务器A访问服务器B内网IP=10.1.1.3:80,直接通信,流量不经过NAT设备,实在没有什么值得可以写的。

Internet用户访问服务器B公网IP

服务器B提供的服务在Internet的呈现形式是 1.1.1.1:80。

当Internet上的用户访问1.1.1.1:80的流量到达NAT设备时,NAT设备需要提前将NAT静态(static)映射表准备好,应该相这个样子的:

    

既然有了这个静态表项,那么NAT设备就可以将目的IP 从1.1.1.1改写为10.1.1.3,然后依据 Destination IP = 10.1.1.3来查找路由表,转发Destination IP = 10.1.1.3的IP报文,这个是小菜一碟,服务器B收到该IP报文。

然后B正常回复消息,当回复消息到达NAT设备时,NAT再依据静态映射表将SourceIP从10.1.1.3改写为1.1.1.1,并对改写完的IP报文查询路由表,将IP报文转发到Internet上去。这是标准流程,相信大多数读者可以理解。

写了这这长长的一段,是为了更好地问答接下来的问题。


服务器A访问服务器B公网IP

Source IP =10.1.1.2

Destination IP=1.1.1.1

1.A要访问1.1.1.1:80,查询路由表发现要发给网关10.1.1.1

2.网关10.1.1.1发现A发给自己的IP报文需要NAT,源IP =10.1.1.2需要做动态NAT映射,A使用随机端口56012,于是就动态生成了一个NAT表项:

Dynamic Entry1.1.1.1:56012 --------- 10.1.1.2:56012

3.NAT设备将IP报文的Source IP做了以上的修改,Source IP =1.1.1.1

Source IP =1.1.1.1 

Destination IP=1.1.1.1

4.NAT发现目的IP =1.1.1.1 竟然和上文的静态表项相匹配,毫不犹豫地将目的IP 做了替换,替换后的IP报文:

Source IP =1.1.1.1

Destination IP=10.1.1.3

5.查询路由表继续将IP报文转发给服务器B

6.返程的流量处理方法和1-4类似,也是经过两次NAT地址变换(源IP、目的IP),最终达到服务器A


Hairpin技术

上文的两次NAT转换使用了Hairpin技术。

一般情况下,从LAN接口收到的流量,只会转发到WAN接口上去,而不能再转发到LAN接口,这种限制是为了避免流量的环路可能。

但是服务器A与服务器B都处于LAN接口上,A使用公网IP访问服务器B,必然先将流量通过LAN接口发给NAT设备,NAT设备做了两次NAT变化之后,必然要把流量从LAN接口发回来,为了实现这种访问,这里打破了上文的限制,称这种技术为Hairpin,分叉技术。

写完这个答案,留给读者一个问题,如果服务器B主动访问Internet上的一台服务器2.2.2.2:443,NAT设备上只有静态NAT表项:StaticEntry 1.1.1.1:80 ------- 10.1.1.3:80

NAT设备上没有配置动态NAT,请问服务器B可以访问Internet吗?

服务器无法访问Internet,静态映射表只用于服务器B被动提供服务。

服务器B可以使用端口80作为源端口吗?

80端口作为知名(well-known)端口,用于被动响应端口,操作系统会禁止应用程序使用80端口作为源端口,而是让应用程序使用49152-65535(private port)端口范围内的随机端口。

而应用程序如果使用49152-65535端口内的任意端口作为源端口,自然不会匹配到静态NAT表项,加上NAT设备没有配置动态NAT,所以服务器B访问Internet的报文将以SourceIP = 10.1.1.3被转发到Internet上去,但由于10.1.1.3是私有IP,即使到达Internet上的服务器,最终也无法返回。

版权声明:部分文章内容、图片来源于互联网获取,如有侵权请联系删除,发送邮件:server889#qq.com 请将#改为@,我们将第一时间审核处理!
Tags服务器
上一页文章:2015上半年备受关注的五大云计算要点   下一页文章:公网IP和内网IP分别在哪里?NAT转换又是什么鬼?

关注新之洲COM
服务器租用/托管联系QQ:78664972 / 316065124

服务器优势
     
IDC优势

IDC优势

广东专业IDC服务器租用提供商
8年以上丰富经验,ISP经营许可资质
多个机房供应选择IDC数据中心
服务器机房资源遍布海内外
贴心服务支持

贴心服务支持

7*24技术维护支持
普通话、英语多语言技术支持
免费故障排查处理
免费重启,重装系统,网络连接维护服务等
       
网络和硬件的保证

网络和硬件的保证

网络基础设施一流
保证安全可靠的存放环境
网络连通率99.99%
多线路骨干网接入,网速畅通无阻
管理和监控

管理和监控

网络连接管理
实时监测带宽使用
流量监视
提供免费网络流量报告
  服务协议/条款

一、整机服务器可安装任何系统,默认Windows Server 2003系统以及linux系统,其他系统可提供完整镜像安装。

二、国内机器均要备案,如未备案的可联系客服备案,香港服务器,韩国服务器免备案。

三、退款条例:非机器问题不支持退款,质量问题可申请退款。

四、一切内容以客服聊天记录为标准,S内容直接封机器不退款。

五、新之洲数据一致续费提前三天会给您联系通知,如联系不上机器到期先下架1天第二天还未来续费或者备份资料的直接格式化。

六、免责声明,关于机器故障等情况这个是机房无法控制的,请各位用户要备份,可联系技术员设置全自动日期周期备份。