web开发中的计算机网络知识——网络层

IPv4编址,物理链路,接口,路由器,ip地址

  1. ip数据报通过链路传送;
  2. 链路与机器的边界叫接口(interface);
  3. 每台主机有一个接口对应它的链路;
  4. 每个路由器有多个接口,对应多个链路;
  5. 因为每个IP要求每个接口都有唯一的IP地址,所有IP地址是对应接口的;一个路由器可以有多个ip;

ip地址在路由和主机之间的分配

clipboard.png

  1. ipv4中大概有40亿个可能的ip地址;
  2. 它们是不可以自由分配的
  3. 观察图中的主机和路由器的ip地址;可以发现左侧三台主机和路由器ip地址前缀都是 223.1.1.xxx ;左侧的24比特(三位10尽职= 8位二进制)是相同的;它们是不经过路由器链接起来的,这种叫以太LAN(局域网),链接它们的可以是 一台以太网集线器 或者 交换机;
  4. ip编址会为它们组成的子网分配一个 223.1.1.0/24 地址;其中 /24 记法又叫 子网掩码;它表示,这个子网中的ip地址 前24比特 是由 223.1.1 组成;
  5. 子网掩码 同时也限制了 任何其他机器要链接到该子网,都要求地址形式 是 223.1.1.xxx;

怎么区分子网?

分开主机和路由器的每个接口,从而产生了几个分离的网络岛;接口端链接了这些独立的网络的端点,这些独立的网络中的每个都叫做一个子网;
简单来说,就是 每个与 a路由器链接的 网络群(包括主机和路由器) 都可以叫做这个a路由的子网;
例子:
下图有几个 子网?
clipboard.png

图中 每个路由器 链接了有两个主机组成的子网;其次每个路由 又链接了其他两个路由器组成的子网;所以每个路由器都有两个子网;所以一共 有6个子网;

ip 分类编址 和 CIDR编址

一个ip地址 可以分开两个部分;例如 子网掩码223.1.1.0/24 下的主机 223.1.1.1;前面 223.1.1 是网络前缀,后面的.1 是网内地址; 通过这种方式,局域网内的路由器可以只辨识 后面的x位就找到了 机器;子网外的路由器 只辨识 前面24比特的网络地址就可以;大大加快了路由器转发表的长度

很久之前,大家采用的是 分类编址;它规定分配一个ip地址块 要指定 8/16/24 中一种比特作为网络部分编址;分布成为A,B,C类网络;但是因为机器数量不断增多,这种分配方法出现问题;一个C类子网 最多有 2的8次 - 2 = 254 个ip(其中两个做特殊用途,广播地址255.255.255.255,源地址0.0.0.0);对于一个大公司来说,太少了;但是一个 B类子网 可以分配到65534个ip又太多了;

于是开始出现了 CIDR 编址方式;就是 223.1.1.0/24 记法; 后面的24 表示从第几比特开始 属于网络部分;
这样就可以更加自由的分配ip了;
例子:你的公司是如何从ISP(互联网服务提供商)获取到需要的ip数量的;
clipboard.png
从例子中可以看到,isp分配到的是20比特 网络前缀的ip块;那20比特以后的编址都属于该isp;它可以把后面的20-32比特 编址按照需求分配给下面的多个组织;

那ISP的ip块是谁给的?
clipboard.png

每个组织怎么分配得到的ip块?

  1. 每个组织的网络管理员可以手动为每个路由器或者主机分配IP;
  2. 但是更加通用的做法是 通过DHCP(动态主机配置协议)自动获取ip地址
  3. 管理员还可以配置DHCP 以使某主机 每次链接获得固定ip地址;
  4. 通过DHCP协议,子网中的每台主机都可以知道一些网络信息如:子网掩码,默认网关(第一跳路由地址),它本地的DNS服务器地址;更新 ip的租用期限;

DHCP服务器

为了便于管理大型点的网络,会假设 DHCP服务器用于很方便的动态分配ip;这样做可以解决一个大问题;如校园网可能有1000个学生有电脑;但是可能同时在线机器不会超过500台;所以通过DHCP服务器动态分配 新加入机器的ip 和 及时回收 离线机器ip ,isp就可以只需要拿到一个500ip的ip块就可以对付100台电脑了;

DHCP服务器4个工作步骤
  1. 新机器加入网络时,DHCP服务器使用广播目的地址 255.255.255.255,源地址:0.0.0.0 发送DHCP发现报文
    给每一个子网中的机器;新加入的机器接受到 DHCP发现报文,通过67端口发回给 DHCP服务器;(这时新机器还不知道DHCP地址);
  2. DHCP服务器 收到发现报文以后,会广播出 提供报文;其中包含事务ID,推荐给客户机的ip地址,网络掩码,以及ip租用期限;
  3. 新到的机器 会选择响应的 DHCP服务器中的一个,并用 请求报文 回应;(这时已经知道 DHCP服务器地址);
  4. DHCP服务器 通过DHCP ACK报文响应 请求的 新机器,新机器就可以通过得到的DHCP ACK报文的信息上网了;

NAT 网络地址转换

现实的问题: 如果某个家庭被分配了1个ip如:192.186.16.17;但是随着机器的增多(手机,联网打印机等等),1个ip地址肯定不够用;这个时候怎么保证多个设备上网呢? NAT 的作用就是实现一个ip多个设备共享;

NAT的作用机制:

  1. 家庭中使用专用地址(只在这个局域网中有意义的地址)如:10.0.0.0/24;因为每个家庭都这样做,所以这个地址只对本家庭中的设备有意义;
  2. 为了让这个专用地址的设备可以跟外面的设备交换分组,NAT路由器对外就会表现得像一个独立的机器,它对外的ip就是这个家庭的唯一ip:192.186.16.17; NAT路由器从 ISP 的DHCP路由器获取唯一的ip以后,再在自己的网络中创建一个 NAT-DHCP 服务;这个服务可以为家庭中每个设备提供虚拟的专用ip;
  3. 对外已经可以接受分组,那么怎么分发这些分组给家庭内的对应设备呢? 这时,NAT会在内部创建一张NAT转换表,表中包含了端口号 和ip地址;
  4. 例如: 家庭中设备10.0.0.1 通过端口号 123 请求 外面的服务器; NAT 首先会保存这个请求到 转换表中;然后再包装 一层,把源ip改为对外的ip 192.186.16.17,后面加上自己可分配的6万个端口号中未被占用的一个,例如:8088,那么这个请求对外部服务器来说就是 192.186.16.17:8088的请求报文;
  5. 接受到回应分组以后,NAT可以通过 8088 端口在 转换表中找到设备ip和端口号 10.0.0.1:123;把分组发给这个家庭设备;

无线网络

标准 有很多个,大赢家是 802.11无线LAN,它就是WIFI(Wireless Fidelity);
clipboard.png

802.11 有基本服务集BSS组成; BSS = 一个或多个无线站点 + 一个接入点(中央基站 AP);
clipboard.png

AP发出无线信号连接手机,然后AP连接的路由器(或者交换机),路由器与外网交换分组;家庭中的AP与路由器通常封装在同一个盒子中,也就是我们通常看到的“路由器”;

每个站点都有自己mac地址,每个AP也有自己的mac地址;mac地址理论上是唯一的,由 IEEE所 管理;

SSID :AP的服务集标识符(wifi名字),管理员定义wifi时应该给的;

信道 :管理员定义wifi时还应该给定wifi一个信道号;802.11运行在 2.4~2.485GHz 频段内;在这85MHz频段被分为了11个部分重叠的信道;当2个信道中间有4个以上信道隔开时才算不重叠;所以1,6,11三个信道就是不重叠信道; 这意味着管理员可以,把1,6,11三个信道分开,分别安装三个AP,如果这三个AP都链接到同一个路由器中,就组成了最大传输速率 33Mbps 的无线LAN。

信标帧: 因为总共就只有11个信道,但你置身于多个wifi重叠的场景时,某些wifi可能在用同一个信道,怎么知道选择哪一个wifi呢;802.11标准要求AP周期性地发送 信标帧,其中包含了该AP的 SSID 和MAC地址;这就是你的手机区分每个wifi的依据;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值