ip划分与私公网ip、ip的传递

报文问路:1、不知道跳转默认路由器,2、知道路径,向对应路径发出报文,3、路口路由器,下一步就是目标主机在哪。

想要通信必须同在一个局域网,其实将公网就可以看作一个大型的局域网。

在同一个局域网内发送报文会被其他主机看到包括自己,如果发送报文的主机发现其他人,数据碰撞可能导致数据错乱无法避免,当然发送的主机也会知道,然后启动碰撞避免算法,发送主机进入随机休息时间,然后重新发送报文。ip划分与私公网ip、ip的传递_第1张图片

同一个局域网内的主机越少越好,避免碰撞,一个网络中报文越短越好, 传输数据时间短避免碰撞。

交换机:一个局域网我们分左右,

如果通信的机器在同一侧发送碰撞,就不会将碰撞数据传到另一侧

ip划分与私公网ip、ip的传递_第2张图片

4的发生报文也不会影响到1 2 5 6区域的互相通信。

当然左右也是可以互相通信的,交换机就是为了减低报文碰撞的影响,与发生率

ip划分

过去

在过去ip简单的划分依据ABCDE类划分网络ip号,可是这样的划分是极大的对ip资源的浪费。

ip划分与私公网ip、ip的传递_第3张图片

  • A类 0.0.0.0到127.255.255.255
  • B类 128.0.0.0到191.255.255.255
  • C类 192.0.0.0到223.255.255.255
  • D类 224.0.0.0到239.255.255.255
  • E类 240.0.0.0到247.255.255.255

看似很多,但是如果只用这样的ip分配方法,70亿人都无法平均到,更何况大型计算机区域。并且如果这是大型的网络资源的浪费,如果我独占了一个A类ip网络号,只是用1台机器,剩下的2^16-1个ip资源全部都浪费了。

所以这个方法已经被摒弃了。

现在

现在我们使用子网掩码(subnet subnet)来细分,并且采用私网ip公网ip分开内网与外网极大的缓解了ipv4的资源紧张的情况,让我们看看怎么个事。

ip是网络号+主机号的。

网络号是为了表征区域的,网络号会在查找过程中会不断扩大,将其主机限制在小区域,然后查找。

ip划分与私公网ip、ip的传递_第4张图片

怎么看待子网掩码:子网掩码也是一个32位的正整数. 通常用一串 "0" 来结尾; 将IP地址和子网掩码进行 "按位与" 操作, 得到的结果就是网络号。

这里主机的ip与其子网掩码按位&后得到了就是对于的网络号,根据其得到的网络号从其网卡出去。一般路由转发(我们的电脑也会也转发机制),一个路由器中存在一个叫做路由表的大小,其是为了网络路由转发的决策,决定通过那个口转发数据

来了一个报文ip为172.26.1.250,然后和在其路由表中查找,根据子网掩码,对应到了172.26.0.0这个网络号,就会从其网卡发出报文。

私网

如果一个组织内部组建局域网,IP地址只用于局域网内的通信,而不直接连到Internet上,理论上 使用任意的IP地址都 可以,但是RFC 1918规定了用于组建局域网的私有IP地址

  • 10.*,前8位是网络号,共16,777,216个地址
  • 172.16.到172.31.,前12位是网络号,共1,048,576个地址
  • 192.168.*,前16位是网络号,共65,536个地址
  • 包含在这个范围中的, 都成为私有IP, 其余的则称为全局IP(或公网IP);

私网ip不会出现在公网上,而是而是依托一个公网ip做数据的转发,所以,不同的公网ip下允许存在相同的私网ip号。

ip划分与私公网ip、ip的传递_第5张图片

  1. 一个路由器可以配置两个IP地址, 一个是WAN口IP, 一个是LAN口IP(子网IP).
  2. 路由器LAN口连接的主机, 都从属于当前这个路由器的子网中.
  3. 不同的路由器, 子网IP其实都是一样的(通常都是192.168.1.1). 子网内的主机IP地址不能重复. 但是子网之 间的IP地址就可以重复了.
  4. 每一个家用路由器, 其实又作为运营商路由器的子网中的一个末端节点. 这样的运营商路由器可能会有很多级, 最外层的运营商路由器, WAN口IP就是一个公网IP了.
  5. 子网内的主机需要和外网进行通信时, 路由器将IP首部中的IP地址进行替换(替换成WAN口IP), 这样逐级 替换, 最终数据包中的IP地址成为一个公网IP. 这种技术称为NAT(Network Address Translation,网络地 址转换).
  6. 如果希望我们自己实现的服务器程序, 能够在公网上被访问到, 就需要把程序部署在一台具有外网IP的服 务器上. 这样的服务器可以在阿里云/腾讯云上进行购买

ip传递路由NAT(NAPT)

路由的过程, 就是这样一跳一跳(Hop by Hop) "问路" 的过程. 所谓 "一跳" 就是数据链路层中的一个区间. 具体在以太网中指从源MAC地址到目的MAC地址之间的帧传输区间

这里采用了NAT技术,这个技术就是为了缓解ipv4不足的技术,巧妙地建私网和公网联系起来。

工作在网络层中,路由器将接收报文源ip替换为WAN口的ip,保证在最后,在公网中的ip不会重新私网ip号。ip划分与私公网ip、ip的传递_第6张图片

在私网访问公网时,依托NAT改变原ip,公网响应私网,找的入口路由然后NAPT找到实际对应的私网ip,就行响应。

代理服务器

正向代理

ip划分与私公网ip、ip的传递_第7张图片

校园网就是最好的正向代理服务器代表,链接校园网的设备,向外界访问资源的时候,所有的请求都会经过该服务器,我们可以将其看成一个巨大的路由器,但是服务器允许缓存资源预设在代理服务器中,打个比方,2个主机同时访问抖音服务器,A主机先B主机后,A、B主机访问的资源相同,服务器在访问数据后会预留一段时间,当B再来访问时候,直接从代理服务器中获取资源,不用再去抖音服务器访问,大大的提高了我们的网络读写效率,并且正向代理服务器会检查访问的合法性,访问的内存合法性。

反向代理

依旧和路由器很像

ip划分与私公网ip、ip的传递_第8张图片

反向代理正好与正向代理相反,对于客户端而言代理服务器就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理服务器中的内容发送普通请求,接着反向代理将判断向何处转交请求,并将获得的内容返回给客户端。反向代理对外的表现都是透明的,客户不知道自己访问的是代理服务器,客户端也不需要任何配置就可以访问。当我们配置好代理服务器后,反向代理(Reverse Proxy)实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

正向代理和反向代理区别

正向代理中 ,代理服务器和client同属一个网络,对server透明。正向代理需要配置在客户端;
反向代理中,代理服务器和server同属一个网络,对client透明。 反向代理需要配置在服务端;
实际上代理服务器在两种代理中做的事都是代为请求和响应,不过从结构上看正好左右相反,故称为正反向代理。

你可能感兴趣的:(tcp/ip,服务器,网络协议)