bneglect

不同网络的两主机如何通信

  1. 不在同一个网络的两个主机,A应该不知道B主机的IP吧?(毕竟公网IP只有一个,而B的内网IP应该也不知道,B的Mac地址也获取不到吧?)
  2. 首先,无线上网,是要经过路由器A的,对于路由器A来说,1.它向下提供给接入的用户一个id,也就是类似于192.168.1.231,这样的ip地址,所有在这个路由器下的用户的ip地址的前面的网络号是相同的,都是192.168.1.(),而()里面的东西就是路由器分配给每个用户的id,通过这个id,他能够辨别出是哪个用户发出的数据请求信息,同时也就知道如何将服务器返回来的信息返回给哪个用户。2.向上,他会把自己的公网ip(类似于210.45.240.111)通过数据帧提供给其他路由器或者服务器,而服务器返回的信息也就会发给路由器A。
    链接:https://www.zhihu.com/question/26759436/answer/34601361
  3. 不在同一个网络的两主机A和B,A是怎么找到另一个局域网中的主机B的?:https://www.cnblogs.com/ranyonsue/p/9713992.html
  4. (1)网关,简单来说就是网络中数据的关口,网关的IP地址就是具有路由功能设备的IP地址,而此类设备可以是路由器、启动路由协议的服务器或者代理服务器等。(2)路由就是把信息从源传输到目的地的行为,在大多数宽带路由器中,未配置静态路由的情况下,内部就存在一条默认路由,这条路由将LAN口下所有目的地不在自己局域网之内的信息包转发到WAN口指定的网关去。每个信息包在经过路由器时,路由器会检查目的IP,将它和路由表中的子网掩码做与计算,并与路由条目中的IP进行对比,相同,就按照这条路由规则转发,不相同就在检查对比下一条,如果所有的都不相同,则转发到默认路由去。(3)默认路由,路由器在转发时,它将所有非本网段的目的IP包都发到WAN口的网关去,由WAN口网关所指定的设备决定信息包是发到它自己连的内网还是发到外网去。(4)路由器隔绝广播,划分了广播域,也就是说,路由器不会转发广播数据,不同路由器之间通讯,是通过ARP协议来获得下一跳路由器的MAC地址,ARP是基于广播的,路由器只能发现一跳范围内的其他路由器设备。-------------https://www.cnblogs.com/embedded-linux/p/10200831.html
  5. 拿微信来举例,A给B发消息,经过微信服务器,但是微信服务器是怎么找到B的呢?(B用WiFi,4G网络的话,应该没有公网IP,难道是服务提供商记录下来手机的内网IP,并且永远不变?)
    以qq来举例,QQ软件程序设置了QQ服务器的IP信息,
  6. 如何知道接收方的IP? 客户端程序内置了服务器的IP。
  7. 如何知道接收方的Mac地址?根据IP和ARP协议
  8. 当自己的电脑没有IP地址的时候(断开WiFi等,不联网就没IP了),是发不出去数据包的,ping 其他的主机比如百度,会显示“请求不到主机“
发表于 2020-07-30 16:29  这个名字怎么用不了  阅读(284)  评论(0编辑  收藏  举报
 

分类:

技术点:

相关文章: