1. 网络基础

1 不同语言跨平台原理

  1. 同一份代码可以在多个操作系统跑效果相同

1.1 C/C++

  1. 源代码为.c或.cpp(c plus plus)文件
  2. 想要在不同平台执行,需要将源代码使用平台相关的编译器,编译成不同格式的可以被操作系统直接执行的可执行文件
  3. 这些可执行文件实际上就是机器码

1. 网络基础

1.2 Java

  1. 源代码为.java文件
  2. 想要在不同平台执行,需要将源代码编译成.class字节码
  3. 字节码不能被操作系统直接执行,需要由操作系统上的JVM应用程序加载并翻译成机器码,最终再交给操作系统执行

1. 网络基础

1.3 脚本语言

  1. js、python为脚本语言
  2. 脚本语言无需编译,直接由操作系统上的某个应用程序,实时将其翻译成机器码并最终交给操作系统执行,所以叫解释执行
  3. 对于js,浏览器对其进行解释与执行

2 服务器

  1. 服务器就是一个软件,该软件占用并监听服务器的端口
  2. 同一个服务器软件上,可以部署多个项目,例如qq项目、微信项目、王者荣耀项目,他们共用一个端口

3 通信协议

  1. 用于规定通信双方如何进行数据传送控制,例如数据格式、同步方式、传送速度、传送步骤、检纠错方式、控制字符定义等
  2. 协议定义了一种标准,而标准可以降低沟通成本,方便编程

4 网络互联模型

  1. OSI模型:是一种概念模型,由国际标准化组织提出,一个试图使各种计算机在世界范围内互连为网络的标准框架,为7层结构
  2. TCP/IP四层模型:是真正使用的网络通信模型,协议家族中主要有TCP和IP两个协议,因此命名,为5层结构
  3. TCP/IP五层模型:用于学习研究使用的模型

1. 网络基础

5 请求过程

  1. 客户端想传递数据给服务端,必须先将数据传给下一层,每层都在原来数据基础上加上一些数据,直到物理层,得到最终发送的数据,然后通过介质发送出去,服务器收到数据后,也是一层层向上传递,一层层拆解数据包,最终得到最开始发送的数据

1. 网络基础

6 计算机之间的通信基础

  1. 计算机通过网卡传输和接收数据,MAC地址就是网卡的唯一标识
  2. 发送出的数据包中有源IP,目标IP,源MAC,目标MAC
  3. 可以暂时理解为,MAC用于同一网段之间寻找机器,IP用于不同网段间查找机器,也就是说,无论什么设备,收到目标MAC为FFFF.FFFF.FFFF的数据包,都会广播给同一网段中所有机器,而交换机和集线器的区别在于,收到目标MAC为指定MAC地址的数据包时,交换机会检查自己的arp缓存中,是否记录了该MAC地址,如果有记录,按指定路线发送,如果没记录就不发送,而集线器仍然会对局域网中所有机器发送该数据包
  4. 如果网卡发现数据的目标mac地址&自身mac地址,结果为FFFF.FFFF.FFFF,也就是发现就是自己,就会将数据传递给上一层进行处理,如果网卡发现数据的目标mac地址不是自己,就会将数据丢弃,不会传递给上一层进行处理

7 计算机间的连接方式

  1. 使用Cisco Packet Tracer模拟网络搭建
  2. 仿真:一步步发送数据包,可以观察整个数据传输的过程
  3. 显示连接不同设备的端口名:选项–首选项–总是显示端口标签
  4. 如果设备之间连线上的标志为绿色表示连通,黄色表示出现bug,需要反复切换实时和仿真让其再次变为绿色,红色表示连接的端口没有打开
  5. 汉化:将chinese.ptl文件放入/Applications/Cisco Packet Tracer 7.3/Cisco Packet Tracer 7.3.app/Contents/LANGUAGES文件夹,进入Cisco Packet Tracer–选项–首选项–选择chinese-ptl–Change Language
  6. 相关设备介绍
    1. Network Devices:网络设备
      1. Switches:交换机
      2. Routers:路由器
      3. Hubs:集线器
    2. End Devices:终端设备

7.1 网线直连

  1. 需要使用交叉线而不是直通线

    1. 直通线:一根双绞线的两端水晶头压线的标准一致
    2. 交叉线:压线的标准不一致
    3. 相同的设备之间使用交叉线连接,不同的设备之间使用直通线
  2. 配置

    1. 网络基础

  3. 发送流程:计算机0 ping 计算机1

    1. 计算机0准备发送ip为192.168.1.11的计算机1ICMP数据包
    2. 但此时发现没有ip为192.168.1.11的MAC地址(网卡地址),arp -a查看计算机arp缓存中的IP与MAC对照关系
    3. 因此计算机0先发送ARP数据包
      1. 目标IP:192.168.1.11
      2. 源IP:192.168.1.10
      3. 目标MAC:FFFF.FFFF.FFFF
      4. 源MAC:计算机0的MAC地址
    4. 该网段内的主机收到这个ARP数据包时
      1. 用自己的MAC地址&FFFF.FFFF.FFFF,查看结果是否为FFFF.FFFF.FFFF`
      2. 判断目标ip是否为自身
    5. 如果都满足两个条件都满足,就会接受这个ARP数据包,并发送一个新的ARP数据包
      1. 目标IP:192.168.1.10
      2. 源IP:192.168.1.11
      3. 目标MAC:计算机0的MAC地址
      4. 源MAC:计算机1的MAC地址
    6. 当计算机0接收到这个ARP数据包后,就知道了计算机1的MAC地址,此时就可以正式发送ICMP数据包了
  4. 判断是否连通

    1. ping 对方ip
    2. 添加简单的PDU,点击计算机0,然后点击计算机1,进入仿真模式,一步步执行,看ICMP数据包是否能正确传输给计算机1再传输回来,ping命令传输的其实就是ICMP数据包

7.2 同轴电缆

  1. 半双工通信:B上的同轴电缆会检测整个域中是否有信号在传输,如果有就等待一阵后再发送,即A给B发的时,B不能给A发,因此整个域中,只能有一台机器在通信,信号间会冲突

  2. 没有智商:A发送给B时,C、D、E都能收到数据包,只不过会校验MAC和IP失败,将数据包丢弃

  3. 终结电阻:防止信号来回发送

  4. 不安全:A向发送给B,但A会同时发送给C、D、E,那么C、D、E可以使用抓包工具将不是发送给自身的数据包获取到

  5. 中间断开整个网络瘫痪:一旦某段线路断开,就没有终结电阻了,整个域都瘫痪

    1. 网络基础

7.3 集线器

  1. 半双工通信
  2. 没有智商
  3. 不安全
  4. 中间断开不会影响整个网络

7.4 网桥

  1. 半双工通信
  2. 有智商
    1. 当有ARP数据经过后,记录每侧接口所有机器的IP和MAC对照关系
    2. 有数据包经过时,如果发现目标MAC地址在自己的arp缓存中,会发送给指定机器
    3. 如果发现目标MAC地址不在自己的arp缓存中,直接丢弃
    4. 如果发现目标MAC地址为FFFF.FFFF.FFFF,仍然会广播数据包
  3. 安全
  4. 连接的两片网路互相不冲突,因此说网桥的作用是隔绝冲突域
  5. Packet Tracer中,网桥为Switches–PT-Bridge

7.5 交换机

  1. 全双工通信
  2. 有智商
  3. 安全
  4. 连接的所有机器之间互相不冲突
  5. Packet Tracer中,网桥为Switches–PT-Switch

7.6 路由器

  1. 以上设备连接的设备都必须在同一网段

  2. 如果全球计算机都用交换机连,那么它们必须在同一个网段,这样会造成ip不够用,且发送arp广播时,会发送给全球所有计算机,如果多台机器同时发送arp包,会导致网络资源被严重占用,即广播风暴

  3. 路由器用于在不同网段交换数据,隔绝广播域

  4. 配置

    1. 网络基础

  5. 发送流程:计算机3执行ping 计算机5

    1. 使用计算机5的ip&自身的子网掩码,判断和自身ip&自身的子网掩码,是否相同,如果相同表示在同一网段,不同表示在不同网段

    2. 如果计算机3和计算机5在同一网段,发送如下ICMP数据包,此处假设已知目标mac,无需发送ARP数据包

      1. 目标IP:计算机5的ip
      2. 源IP:计算机3的ip
      3. 目标MAC:计算机5的mac
      4. 源MAC:计算机3的mac
    3. 如果在不同网段

      1. 目标IP:计算机5的ip
      2. 源IP:计算机3的ip
      3. 目标MAC:计算机3网关的MAC,也就是路由器左边口的网卡的MAC
      4. 源MAC:计算机3的MAC
    4. 当路由器接收到数据包后,发现目标IP属于自身另一块网卡所在的网段,修改ICMP包中如下信息

      1. 目标MAC:计算机5的MAC
      2. 源MAC:计算机5的网关的MAC,也就是路由器右边口的网卡的MAC
    5. 传递数据包的过程类似发送快递,IP就表示一个人的地址,因此IP地址不会变,而MAC地址类似一个个快递站点,包裹会经过若干站点才能最终到达用户手中,因此MAC地址会不断变化

  6. 路由器连接的设备不能处于同一网段,因为路由器根本不会将ARP包从自己的一个网卡传递给另一个网卡,即使不需要发送ARP数据包,设备已知对方的MAC,也会因为判断对方IP和自己在同一网段,导致目标MAC不是网关的MAC,导致数据无法发送

8 MAC地址

  1. Media Access Control Address
  2. 每一个网卡都有一个6字节的MAC地址,全球唯一,固化在了网卡存储空间ROM中
    1. 前3字节为组织唯一标识符OUI,表示生产该网卡的厂商
    2. 后3字节是网络接口标识符,由厂商自行分配
  3. OUI查询:http://standards-oui.ieee.org/oui.txthttps://mac.51240.com/
  4. 表示格式
    1. Windows:40-55-82-0A-8C-6D
    2. Linux、Android、Mac、IOS:40:55:82:0A:8C:6D
    3. Packet Tracer:4055.820A.8C6D
  5. 48位MAC地址都是1时,也就是FF:FF:FF:FF:FF:FF时,代表广播地址
  6. ifconfig命令可以查看网卡MAC地址,ether后面跟着的就是
  7. 有时可以通过修改MAC地址来蹭网
  8. 当不知道对方主机的MAC地址时,可以通过发送ARP广播来获取对方的MAC地址
    1. 获取成功后,会缓存IP地址、MAC地址的映射信息,俗称ARP缓存
    2. 通过ARP广播获取的MAC地址,属于动态(dynamic)缓存,存储时间比较短(默认2分钟),过期后自动删除
  9. 相关命令
    1. arp -a:查询arp缓存
    2. arp -d 主机ip:删除指定ip对应的arp缓存
    3. arp -s 主机ip MAC地址:增加一条缓存,该缓存属于静态缓存,存储时间较长,不同系统存储时间不同

9 IP地址

  1. Internet Protocol Address
  2. 互联网上的每一个主机都有一个IP地址
    1. 最初是IPv4版本,4字节,32bit,可以用十进制表示,例如11.11.11.11,十进制数最大不超过255,每个十进制数表示8个字节,2019年11月25日,全球的IPv4版本地址已经用完
    2. 后面推出了IPv6版本,16字节,128bit

9.1 IP地址组成

  1. IP地址由2部分组成:网络标识(网络ID)、主机标识(主机ID)
    1. 主机所在的网段 = 子网掩码 & IP地址
  2. 不能作为IP地址的两种情况
    1. 主机ID为全0:因为表示主机所在的网段
    2. 主机ID全为1:因为表示主机所在网段的全部主机,也就是说,ping 192.168.1.255,会给192.168.1.0这个网段中所有主机发送数据,能看到所有主机是否与自身连通,注意ARP数据包虽然也是广播,但一个网段中的主机收到ARP包后,发现IP和自身不同就会丢弃,而ping 192.168.1.255时,发送的ICMP数据包,目标IP为255.255.255.255,目标MAC为FF:FF:FF:FF:FF:FF,当数据包经过交换机时,交换机会将目标IP分别改为该网段中其他所有机器的IP,并分别发送给所有机器,这样,所有机器都能收到这个数据包且不会将其丢弃

9.2 IP地址分类

  1. 按网络ID的二进制表示,以0、10、110、1110、1111开头,将IP地址分为A、B、C、D、E五类
  2. D类地址表示多播地址,E类地址保留为今后使用,因此只有A、B、C类地址才能分配给主机
9.2.1 A类地址
  1. 网络ID二进制表示以0开头,也就是十进制表示以0~127开头

    1. 而0不能使用,127为保留网段,因此可以分配给主机的,第一部分取值范围是1~126
  2. 默认子网掩码:255.0.0.0

  3. 第2、3、4部分,取值范围是0~255,全0表示网段,不能使用,全1表示广播也不能使用,因此每个A类网络能容纳最大主机数为256 * 256 * 256 – 2 = 16777214

    1. 网络基础

9.2.2 B类地址
  1. 网络ID二进制表示以10开头,也就是十进制表示以128~191开头

  2. 默认子网掩码:255.255.0.0

    1. 网络基础

9.2.3 C类地址
  1. 网络ID二进制表示以110开头,也就是十进制表示以192~223

  2. 默认子网掩码:255.255.255.0

    1. 网络基础

9.2.4 D类和E类
  1. 没有子网掩码

    1. D类:第一部分二进制表示以1110开头,也就是十进制表示以224~239
    2. E类:第一部分二进制表示以1111开头,也就是十进制表示以240~255

    1. 网络基础

    1. 网络基础

9.3 子网掩码的CIDR表示法

  1. 192.168.1.100/24:表示子网掩码的二进制表示是24个1,也就是十进制表示的255.255.255.0
  2. 123.210.100.200/16:表示子网掩码的二进制表示是16个1,也就是十进制表示的255.255.0.0
  3. 计算工具:https://www.sojson.com/convert/subnetmask.html

10 子网

  1. 子网划分:借用主机位作网络id,将所在网段相同的IP,划分成处于多个不同网段的IP,其实可以理解为网段划分
  2. 我们知道主机IP&子网掩码,等于该主机所在网段,例如192.168.1.125/24,网段就是192.168.1.1,由于借用主机位作为了子网位,导致192.168.0.30192.168.0.33分别&255.255.255.224,得到的值不同,分别为192.168.0.0192.168.0.32,因此他们不在同一个网段,这就是子网划分的本质
  3. 子网划分可以避免IP地址资源浪费:例如需要让500台主机在同一个网段内,分配一个C类网段不够用,但如果分配一个B类网段,比如191.100.0.0/16,共65534个可用IP地址:191.100.0.1~191.100.255.254,共65534个可用IP地址,多出65034个空闲的IP地址,属于极大的浪费资源
  4. 子网划分步骤
    1. 确定子网的子网掩码长度
    2. 确定子网中第1个、最后1个主机可用的IP地址

10.1 子网划分分类

  1. 等长子网划分:每个子网可用IP地址数量一致
  2. 变长子网划分:每个子网可用IP地址数量不一致
  3. 子网划分器:http://www.ab126.com/web/3552.html
10.1.1 等长子网划分
  1. 使划分出的几个网段的子网掩码相同,就可以完成等长子网划分,其实可以理解为192.168.1.0/24这个网段上的可用IP和192.168.2.0/24上的相同,因为他们的子网掩码都是255.255.255.0

  2. 子网的子网掩码相当于原子网掩码往后移n位,可以划分出2^n个等长子网

  3. 将192.168.0.0/24进行等长子网划分,等分成8个子网,子网掩码往后移3位

    1. 子网掩码:二进制表示11111111 11111111 11111111 11100000,也就是十进制表示255.255.255.224
    2. 主机可用IP:类似192.168.0.0,表示网段不能使用,192.168.0.31表示广播,也不能使用
      1. A子网:192.168.0.1~192.168.0.30
      2. B子网:192.168.0.33~192.168.0.62
      3. C子网:192.168.0.65~192.168.0.94
      4. D子网:192.168.0.97~192.168.0.126
      5. E子网:192.168.0.129~192.168.0.158
      6. F子网:192.168.0.161~192.168.0.190
      7. G子网:192.168.0.193~192.168.0.222
      8. H子网:192.168.0.225~192.168.0.254

    1. 网络基础

10.1.2 变长子网划分
  1. 使划分出的几个网段的子网掩码不同,就可以完成变长子网划分,其实可以理解为192.168.0.0/16这个网段上的可用IP和192.168.1.0/24上的不同,因为他们的子网掩码不同

  2. 对192.168.0.0/24进行变长子网划分,分成3个子网

    1. A子网:子网掩码是255.255.255.224/27,主机IP为192.168.0.33~192.168.0.63
    2. B子网:子网掩码是255.255.255.192/26,主机IP为192.168.0.65~192.168.0.127
    3. C子网:子网掩码是255.255.255.192/25,主机IP为192.168.0.129~192.168.0.254

    1. 网络基础

10.1.3 思考两台电脑是否能通信
  1. 计算机0为192.168.0.10/24,计算机1为192.168.10.10/16
  2. 如果用两台计算机各自的ip&各自的子网掩码,看起来所在网段都是192.168.0.0,但实际上,当计算机0ping计算机1时,会用计算机1的ip&计算机0的子网掩码,得到计算机1的网段,因此二者其实不在同一网段,因此不借用路由器无法直接通信

11 超网

  1. 超网划分:借用网络id作为主机位,将原来所在网段不同的IP,合并在一个网段中

  2. 例如原本有200台计算机使用192.168.0.0/24网段,现在希望增加200台设备到这个网段

    1. 没有进行超网前这400台设备只能在不同网段,200台在192.168.0.0/24网段,200台在192.168.1.0/24网段
    2. 可以将他们的子网掩码左移一位,将192.168.0.0/24、192.168.1.0/24合并为一个网段,192.168.0.0/23

    1. 网络基础

  3. 此时192.168.0.255就可以分配给主机了,因为超网后主机部分多了一位,只要主机部分不全为0,IP就能使用,此时不能作为IP的是192.168.1.255

  4. 无法进行网段合并的场景

    1. 网络基础

  5. 网段合并规律

    1. 如果第一个网段的网络号能被2k整除,那么由它开始连续的2k个网段,能通过左移k位子网掩码进行合并
    2. 因为从第一个能被2^k整除的网络号开始,例如二进制11111111 11111111 11111100,k为2,连续4个网段,他们前22位都完全相同,都是11111111 11111111 111111

12 判断为子网还是超网

  1. 先看网络类型是A、B、C中的哪类,默认A类子网掩码的位数是8,B类子网掩码的位数是16,C类子网掩码的位数是24
  2. 如果该网段的子网掩码位数比默认子网掩码多,就是子网,比默认子网掩码少,则是超网
  3. 例如25.100.0.0/16是一个A类子网,200.100.0.0/16是一个C类超网

13 路由

  1. 在不同网段之间转发数据,需要有路由器的支持
  2. 默认情况下,路由器只知道跟它直连的网段,非直连的网段需要通过静态路由、动态路由告诉它

13.1 静态路由与动态路由

  1. 静态路由:管理员手动添加路由信息到路由选择表,适用于小规模网络
  2. 动态路由:路由器通过路由选择协议(比如RIP、OSPF)自动获取路由信息到路由选择表,适用于大规模网络
    1. 路由选择协议可以理解为,路由器问与其连接的其他路由器,拥有哪些网段

13.2 下一跳

  1. 路由器想要将指定数据发送给目标网络时,该数据包需要发送到的下一个路由器的IP地址
  2. 路由选择表中需要登记目标网络地址、目标网络子网掩码、下一跳地址

13.3 配置

1. 网络基础

  1. 路由器和路由器间需要通过serial口连接,且需要在同一个网段

  2. 添加静态路由表:选中路由器–静态

    1. 网络:想要访问的网段或主机
    2. 掩码:网段或主机的子网掩码
    3. 下一跳:想要到达指定网段或主机,需要将数据包传递给的下一个路由器的serial端口的地址
    4. 下一跳地址不需要掩码,因为下一跳的ip地址一定和自身在同一网段,因此其掩码就是自身的掩码
  3. 如果想访问特定的一台主机,例如195.171.1.10,需要添加信息如下

    1. 网络:195.171.1.10
    2. 掩码:255.255.255.255
  4. 如果想访问某个网段,例如整个195.171.1.0/24,需要添加信息如下

    1. 网络:195.171.1.0
    2. 掩码:255.255.255.0
  5. 配置默认路由:当路由器发现路由表中没有指定目标网段或ip的下一跳地址,会将数据包发送到默认路由的下一跳对应的路由器上

    1. 网络:0.0.0.0,此处不能填其他值,虽然任何值&下面0.0.0.0的掩码,都是0.0.0.0,这是因为路由表中要求,"网络"必须是目标网络的网络号,否则就会报错地址和掩码不一致
    2. 掩码:0.0.0.0
  6. 如果一个路由器连接多个路由器,那么哪边路由器连接的网段多,就将那边配置为默认路由

  7. 本例路由表配置

    1. 路由器5

      网络 子网掩码 下一跳
      0.0.0.0 0.0.0.0 200.0.0.2
    2. 路由器6

      网络 子网掩码 下一跳
      0.0.0.0 0.0.0.0 200.0.1.2
      192.168.1.0 255.255.255.0 200.0.0.1
    3. 路由器7

      网络 子网掩码 下一跳
      0.0.0.0 0.0.0.0 200.0.0.2
      195.171.1.0 255.255.255.0 200.0.2.2
    4. 路由器8

      网络 子网掩码 下一跳
      0.0.0.0 0.0.0.0 200.0.2.1

13.4 查看路由表

  1. 点击放大镜–选中路由器–Routing Table
  2. 类型S:表示为静态添加上的
  3. 类型C:表示与这个路由器连接在一起的网络有谁
  4. 有了C和S,路由器就知道所有与路由器连接的网段应该怎么走了

13.5 ping的第一个数据包丢失

  1. 当A机器通过路由器发送给不同网段的另一台机器B数据包时,例如A ping B,ping命令会发送4次ICMP数据包,但第一次数据包会丢失,显示Request timed out.
  2. 这是因为A第一次会先发ARP数据包给作为A的网关的路由器,询问网关的MAC地址,得到后,将ICMP数据包给网关,但由于此时路由器不知道B的MAC地址,发现自身的arp缓存中没有这个MAC,因此会将该包拒收,同时发送ARP数据包给B机器询问其MAC地址,并记录
  3. 当第二个数据包再进来就不会再出现此问题

14 网络、互联网、因特网

  1. 网络:交换机组的相同网段的网
  2. 互联网:internet,路由器组的不同网段的网
  3. 因特网:Internet,世界最大的互联网,将所有计算机都连在一起,internet首字母大写就特指因特网

15 ISP

  1. Internet Service Provider,Internet服务提供商,比如移动、电信、网通、铁通等
  2. 我们平时拉的宽带都是通过ISP连接到Internet的
  3. ISP的工作就是铺光缆、网线、电话线、路由器,如果我们不够买ISP的服务就想上网,就需要自己用一根网线连接到美国

16 网络分类

  1. 按网络的范围分类,可以分为局域网、城域网、广域网等

16.1 局域网

  1. Local Area Network,简称LAN,WLAN为Wireless LAN,意思是无线局域网
  2. 一般是范围在几百米到十几公里内的计算机所构成的计算机网络,常用于公司、家庭、学校、医院、机关、一幢大楼等
  3. 局域网中使用最广泛的网络技术叫:以太网(Ethernet)

16.2 城域网

  1. Metropolitan Area Network,简称MAN
  2. 一般范围是数十公里到数百公里,可以覆盖一个城市

16.3 广域网

  1. Wide Area Network,简称WAN
  2. 一般范围是几百公里到几千公里,可以覆盖一个国家,通常都需要租用ISP的线路

16 常见的网络接口

  1. FastEthernet:快速以太网接口,100M
    1. 由于局域网中使用最广泛的网络技术叫以太网,因此连接进局域网时,需要使用以太网口
  2. GigabitEthernet:千兆以太网接口
  3. Serial:串行接口
    1. 路由器和路由器连接时使用串口

17 上网方式

17.1 电话线入户

1. 网络基础

  1. WAN:表示广域网,因此应该连接外界
  2. LAN:表示局域网,因此应该连接自己家中的几台设备
  3. 猫:又称为调制解调器,电话线传递的是模拟信号,而计算机中用的是数字信号,因此需要猫进行数字信号和模拟信号的转换
  4. ADSL:非对称数字用户线路,是一种数字用户线路服务,提供上、下行不对称的传输带宽。
    1. 下行:从服务器传递数据到电脑
    2. 上行:将数据从电脑发送给服务器
    3. 非对称:下行和上行速度不同
    4. 我们大部分用的都是下行,上行很少,所以家庭用户,下行更重要

17.2 光纤入户

1. 网络基础

  1. 光猫:数字信号与光信号转换
  2. 是目前最常见的上网方式

17.3 网线入户

1. 网络基础

  1. 楼道里有光信号与数字信号转换设备,因此直接拿一个网线就能上网

17.4 家用无线路由器结构

1. 网络基础

18 公网IP、私网IP

18.1 公网IP

  1. Internet上的路由器中只有到达公网的路由表,没有到达私网的路由表,也就是
  2. 公网IP由因特网信息(Inter NIC)中心统一分配和管理,因此ISP需要向Inter NIC申请公网IP

18.2 私网IP

  1. 主要用于局域网,我们看到的192.168.1.10是私网的IP,因特网中,私网IP可以相同,公网IP不能相同
  2. 保留的私网网段
    1. A类:10.0.0.0/8,共1个
    2. B类:172.16.0.0/16 ~ 172.31.0.0/16 ,共16个
    3. C类:192.168.0.0/24 ~ 192.168.255.0/24 ,共256个

19 NAT

  1. 网络地址转换:在计算机网络中是一种在IP数据包通过路由器或防火墙时重写来源IP地址或目的IP地址的技术。这种技术被普遍使用在有多台主机但只通过一个公有IP地址访问互联网的私有网络中。它是一个方便且得到了广泛应用的技术。当然,NAT也让主机之间的通信变得复杂,导致了通信效率的降低

  2. 查看自己的公网IP时,显示的值就是最接近因特网的那个路由器,进行NAT转换后,得到的公网IP,因为每经过一个路由器,可能就进行一次NAT转换

  3. NAT的作用

    1. 节约公网IP资源
    2. 隐藏内部真实IP
    3. 负载均衡
  4. NAT分类

    1. 静态转换

      1. 手动配置NAT映射表
      2. 一对一转换
      3. 无法节约公网IP资源
    2. 动态转换

      1. 定义外部地址池,动态随机转换
      2. 一对一转换
      3. 无法节约公网IP资源
    3. 端口地址转换(PAT(Port Address Translation))

      1. 采用端口多路复用方式,通过端口号标识不同的数据流,多个私网IP对应同一个公网IP

        私网IP 公网IP
        192.168.1.10:23123 200.0.0.10:23123
        192.168.1.11:7676 200.0.0.10:7676
        192.168.1.12:7676 200.0.0.10:7677
      2. 多对一转换,最大程度节约公网IP资源

      3. 是目前应用最广泛的实现方式

20 不同的路由器

  1. 对于PT-Router,每个以太网口(FastEthernet),都需要配置IP地址,作为另一个网段的网关,因此这种路由器无法连接同一网段的计算机
  2. 而对于819HGW路由器、家用路由器、交换机,他们有些以太网口不需要配置IP地址,那么这种设备就可以连接同一网段的几台计算机