网络基础知识

一、localhost与127.0.0.1的区别

127.0.0.1是一个回送地址,指本地机,一般用来测试使用。大家常用来ping 127.0.0.1来看本地ip/tcp正不正常,如能ping通即可正常使用。

对于大多数习惯用localhost的来说,实质上就是指向127.0.0.1这个本地IP地址。在操作系统中有个配置文件将localhost与127.0.0.1绑定在了一起。可以理解为本地主机的意思。

localhost与127.0.0.1的区别是什么?

localhost也叫local ,正确的解释是:本地服务器

127.0.0.1在windows等系统的正确解释是:本机地址(本机服务器)

    他们的解析通过本机的host文件,windows自动将localhost解析为127.0.0.1

localhot(local)是不经网卡传输!这点很重要,它不受网络防火墙和网卡相关的的限制。

127.0.0.1是通过网卡传输,依赖网卡,并受到网络防火墙和网卡相关的限制。

一般设置程序时本地服务用localhost是最好的,localhost不会解析成ip,也不会占用网卡、网络资源。localhost访问时,系统带的本机当前用户的权限去访问,而用ip的时候,等于本机是通过网络再去访问本机,可能涉及到网络用户的权限。有时候用localhost可以,但用127.0.0.1就不可以的情况就是在于此。

 

二、外网主机怎样将数据包发送到共用一个公网IP的局域网某特定主机上的

内网的一台电脑要上因特网对外开放服务或接收数据,都需要端口映射。端口映射分为动态和静态。

动态端口映射:内网中的一台电脑要访问网站,会向NAT网关发送数据包,包头中包括对方网站IP、端口和本机IP、端口,NAT网关会把本机IP、端口替换成自己的公网IP、一个未使用的端口,并且会记下这个映射关系,为以后转发数据包使用。然后再把数据发给网站,网站收到数据后做出反应,发送数据到NAT网关的那个未使用的端口,然后NAT网关将数据转发给内网中的那台电脑,实现内网和公网的通讯.当连接关闭时,NAT网关会释放分配给这条连接的端口,以便以后的连接可以继续使用。动态端口映射其实也就是NAT网关的工作方式。

静态端口映射:就是在NAT网关上开放一个固定的端口,然后设定此端口收到的数据要转发给内网哪个IP和端口,不管有没有连接,这个映射关系都会一直存在。就可以让公网主动访问内网的一台电脑。

NAT(Network Address Translation,网络地址转换)是将IP 数据包头中的IP 地址转换为另一个IP 地址的过程。在实际应用中,NAT 主要用于实现私有网络访问公共网络的功能。这种通过使用少量的公有IP 地址代表较多的私有IP 地址的方式,将有助于减缓可用的IP地址空间的枯竭。 NAT 的实现方式有三种,即静态转换 Static Nat 、动态转换 Dynamic Nat 和端口多路复用 OverLoad 。

转换 是指将内部网络的私有 IP 地址转换为公有 IP 地址, IP 地址对是一对一的,是一成不变的,某个私有 IP 地址只转换为某个公有 IP 地址。借助于 静态 转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。

动态转换 是指将内部网络的私有 IP 地址转换为公用 IP 地址时, IP 地址是不确定的,是随机的,所有被授权访问上 Internet 的私有 IP 地址可随机转换为任何指定的合法 IP 地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当 ISP提供的合法 IP 地址略少于网络内部的计算机数量时。可以采用动态转换的方式。

端口多路复用( Port address Translation,PAT) 是指改变外出数据包的 源端口 并进行端口转换,即端口 地址转换 ( PAT , Port AddressTranslation). 采用端口多路复用方式。内部网络的所有 主机 均可共享一个合法外部 IP 地址实现对 Internet 的访问,从而可以最大限度地节约 IP 地址资源。同时,又可隐藏网络内部的所有 主机 ,有效避免来自 internet 的攻击。因此,目前网络中应用最多的就是端口多路复用方式。

posted @ 2019-03-21 19:15  十二楼C  阅读(208)  评论(0编辑  收藏  举报