网络通信基础

网络通信基础


1. 原始数据如何到达服务器?

  1. 原始数据经过应用层到达传输层,➕TCP头变成数据段
  2. 到达网络层➕ip头变成数据包
  3. 到达数据链路层➕MAC头变成数据帧
  4. 然后进入物理层以bit流的形式传输过去
  5. 到达服务器端之后,从物理层开始,按封装的顺序依次解封直至传输层变为数据

在这里插入图片描述
在这里插入图片描述


2. 集线器、交换机、路由器

**集线器 hub **

  • 是已淘汰的产品(傻瓜机器、性能差、不安全)
  • 工作在物理层,是中继器的一种形式
  • 可认为是一个多端口的中继器,扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上
  • 并不记忆报文是由哪个MAC地址发出的、也分不清哪个MAC地址在hub的哪个端口
  • 集线器为半双工通信,所有用户共享带宽

交换机 switch

  • 每个插口就是一个冲突域
  • 工作在数据链路层,通过MAC地址的学习和维护更新机制来实现数据帧的转发
  • 通过判断数据帧的目的MAC地址,从而将数据帧从合适的端口发出
  • 全双工通信,每个端口提供专用带宽,有各自的MAC地址

路由器 router

  • 工作在网络层,把一个数据包从一台设备发送到不同网络里的另一台设备上
  • 路由器只关心网络状态、决定网络中的最佳路径
  • 能连接广域网,并分隔广播域和冲突域

3. 路由器工作原理

  1. 首先通过端口将发过来的数据包接收进来
  2. 转发模块会根据接收到的数据包 IP 头部中记录的接收方 IP 地址,在路由表中进行查询,以此判断转发目标
  3. 转发模块将包转移到转发目标对应的端口,端口再按照硬件的规则将包发送出去

4. 一台路由器为何能实现多主机上网

NAT
  • Network Address Translation 网络地址转换
  • 实现局域网的IP地址与广域网的地址之间的相互转换
  • 将广域网IP地址转换为大量的局域网IP地址,减少对公网IP地址的占用
  • 所有ISP(Internet服务提供商)提供的内网Internet接入方式,几乎都是基于NAT协议的

NAT的典型应用:
在一个局域网内,只需要一台计算机连接上Internet,就可以利用NAT共享Internet连接,使局域网内其他计算机也可以上网。使用NAT协议,局域网内的计算机可以访问Internet上的计算机,但Internet上的计算机无法访问局域网内的计算机


5. 何谓外网ip,内网ip,网关地址?127.0.0.1与0.0.0.0代表什么?

IP地址分类
  • A类:1.0.0.0 到 127.255.255.255主要分配 给主机数量较多而局域网网络数量较少的大型网络
    网络数:2^7 - 2 = 126(0和127开头有特殊用途)
    每个网络中的主机数:2^24-2=16777214(全0表示子网,全1表示广播)
  • B类:128.0.0.0 到191.255.255.255 一般用于国际性大公司和政府机构
    网络数:2^14=16384
    每个网络中的主机数:2^16-2=65534
  • C类:192.0.0.0 到223.255.255.255 用于一般小公司校园网研究机构等
    网络数:2^21=2097152
    每个网络中的主机数:2^8-2=254
  • D类:224.0.0.0 到 239.255.255.255 用于特殊用途,又称做组播地址
  • E类:240.0.0.0 到255.255.255.255 暂时保留
保留地址

对于普通 IP 地址的主机号的两种特殊情况:

  • 全 0:表示整个子网
  • 全 1:表示向子网上所有设备发送包,即“广播”
公有地址(外网IP)
  • 由国际组织 Inter NIC负责分配给注册并向Inter NIC提出申请的组织机构
  • 通过公有地址可以直接访问互联网
私有地址(内网IP)
  • 是在A、B、C三类IP地址中保留下来为企业内部网络分配地址时所使用的IP地址
  • 私有ip属于非注册地址,专门为组织机构内部使用
  • 这些地址是不会被Internet分配的,它们在Internet上也不会被路由。它们不能直接与Internet网连接,但可以通过NAT技术与Internet通讯

注:私有地址范围

  • A: 10.0.0.0~10.255.255.255 即10.0.0.0/8
  • B: 172.16.0.0~172.31.255.255 即172.16.0.0/12(掩码12溢出4位,能表示16个网段)
  • C: 192.168.0.0~192.168.255.255 即192.168.0.0/16
特殊IP地址

1️⃣0.0.0.0 (在主机还未被分配IP时)代表本主机地址,网络上任何主机都可以用它来表示自己

  • 在服务器中,0.0.0.0指的是本机上的所有IPV4地址
  • 在路由中,0.0.0.0表示的是默认路由
  • 也可用来表示目标机器不可用

2️⃣255.255.255.255 用于本网络上的广播

  • 只能用作目的地址
  • 对本机来说,这个地址指本网段内(同一广播域)的所有主机

3️⃣任何一个以数字127开头的IP地址(127.x.x.x)都叫做回环地址loopback

  • 主要用于测试
  • 在传输介质上永远不应该出现目的地址为“127.0.0.1”的数据包
  • 本地回环地址最常用127.0.0.1,实际上1~254都是本地回环地址
  • 回环测试:能PING通 127.0.0.1 说明本机的网卡和TCP/IP协议正常工作,与是否连接Internet无关
  • DDos攻击防御:网站受到DDos攻击之后,将域名A记录指向127.0.0.1,即让攻击者自己攻击自己

4️⃣224.0.0.0 ~ 239.255.255.255

  • 组播地址
  • 224.0.0.1特指所有主机,224.0.0.2特指所有路由器。224.0.0.5指OSPF 路由器
  • 多用于一些特定的程序以及多媒体程序

5️⃣169.254.x.x

  • 如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获取地址,系统会为主机分配这样地址

网关(Gateway)
  • 又称网间连接器、协议转换器
  • 网关实质上是一个网络通向其他网络的IP地址
  • 不在同一网段的两台计算机想要进行通信,必须经过一道关口,这道关口就是网关(网络关口)
  • 网关既可以用于广域网互连,也可以用于局域网互联
默认路由 & 默认网关

对于边界主机,跨网段通信的出口唯一,即为它连接的路由器。当目标地址无法在路由表中匹配到时,数据包将会被发送给路由记录中destination=0.0.0.0所对应的网关地址(即为此路由器在本网段的接口地址),称为默认网关

本条记录在路由表中称为默认路由(因此处在架构中间的路由器不应配置默认路由,因为出口不唯一)

[root@centos7 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.0.2        0.0.0.0         UG    100    0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.0   U     100    0        0 eth0

# Destination = 0.0.0.0 对应 Gateway = 10.0.0.2
本条规则叫做默认路由,其默认网关为 10.0.0.2

# Destination = 10.0.0.0 对应 Gateway = 0.0.0.0
目标为 10.0.0.0 即为同网段通信,因此 Gateway = 0.0.0.0 表示不需要网关
网关地址

是具有路由功能的设备的IP地址,设备类型如下:

  • 路由器
  • 启用了路由协议的服务器
  • 代理服务器

6. 是什么是端口映射

端口映射分为动态和静态

动态端口映射:

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

静态端口映射:

  • 在NAT网关上开放一个固定的端口,然后指定此端口收到的数据要转发给内网哪个IP和端口,无论是否已连接
  • 这个映射关系都会一直存在,就可以让公网主动访问内网的一台电脑

7 子网划分详解

已知地址信息 172.16.0.0 / 18

  • 子网掩码是什么
  • 可以划分为几个子网,每个子网的地址是什么?
  • 每个子网的主机地址的范围是什么

答案:https://www.bilibili.com/video/BV1xJ41197iY?p=244

CIDR

补充知识:当掩码不等于8/16/24,称之为可变子网掩码(CIDR:无类域间路由)

# 说明
本题划分子网之后,每个子网的主机数量为' 2^14 - 2 '

# 为什么一定要 -2
【原则】因为每个网段必须有两个地址是不能给主机使用的,一个作为'本网段地址'、一个作为'广播'(默认取头尾)

全面解析:

# 常规情况:以24为例
10.0.0.0/24  表示一个子网,是一个确定的网段
其中包含 10.0.0.0 ~ 10.0.0.255 总共256个ip
'排除网段地址 10.0.0.0
'排除广播地址 10.0.0.255
'剩余所有可用的主机ip还剩 256-2=254个(2^8-2)
#————————————————————————————————————————————————————————————

# 特殊情况:以25为例
10.0.0.0/25 可表示两个子网
	子网1: 10.0.0.0 ~ 10.0.0.127
	子网2: 10.0.0.128 ~ 10.0.0.255
'注意:对于一个子网,必须遵循以下原则:
1.必须有一个地址作为【本网段ip】(默认还是'主机号全为0',在这种情况下尾数不一定是0,但仍然要排除)
2.必须有一个地址作为【广播地址】(默认还是'主机号全为1',在这种情况下尾数不一定是255,但仍然要排除)

# 因此,排除的ip为:
子网1应排除 10.0.0.0 和 10.0.0.127
子网2应排除 10.0.0.128 和 10.0.0.255
'注意:这种做法是TCP/IP协议的默认做法,原则上也是可以修改的。。。

#——————————————————————————————————————————————————————————————————————————————
# 总结:
无论使用什么样的掩码,只要是划分子网,必然遵守:' 每个子网的【主机数量】=2^n-2  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值