day024-Linux基础-网络2

5次阅读
没有评论

2026年4月9日

知识点回顾

什么是网络?
网络就是物体通过一定形式连接起来,物体与物体可以实现通信
连接的介质:
1.网线:五类、超五类、六类线
2.水晶头:橙白 橙 绿白 蓝 蓝白 绿 棕白 棕
    8线芯:1236芯通信 其他4芯无用(方向供电 POE供电)
3.光纤:
4.交换机
5.路由器
6WiFi

多台主机如何通信
通过连接介质(网线、交换机、路由器...)

通信形式:
计算机-计算机
计算机-服务器
服务器-服务器
计算机-交换机
服务器-交换机
交换机-路由器

网络设备:
什么是交换机?
交换机实现多台主机进行通信
主机发送数据包,数据包包括地址(ip+MAC)ARP表

什么是路由器?
路由器实现局域网中各个主机实现通信

NAT技术:端口映射
内网转外网的方式

主机以ip加端口形式访问外网,
内网ip:端口-->NAT转换为公网ip:端口 找到目标访问地址

01.路由表

网络面试题:
实现不同的网段通信:
两个网段中间加路由器
192.168.1.x
10.0.0.x
--------
搞明白我们访问百度的过程?
路由器实现让两个不同的网段进行通信
1.Cisco Packet Tracer(网络学习模拟器)
路由器配置:双击路由->CLI
Router>         #用户模式 级别啥都不能干
Router>?        #?查看能干啥
Router>enable   #进入到特权模式
Router#         # #表示特权模式
Router#config terminal  #进入配置模式可以简写config t
Router(config)#
Router(config)#exit     #返回到下一个模式
Router(config)#interface fa0/0  #进入fa0/0接口 可以简写 int fa0/0
Router(config-if)#ip address 10.0.0.1 255.255.255.0 #设置IP地址 简写ip add
Router(config-if)#no shutdown   #开启接口   可以简写 no shut
Router#ping 10.0.0.100      #探测是否ping通
Router(config-if)#no ip address #删除原来的配置
Router#show ip route    #查看路由表
Router(config)#ip route 116.63.0.0 255.255.255.0 1.1.1.2 #指定静态路由
Router(config)#route rip    #指定动态路由协议
Router(config-router)#network 192.168.1.0 宣告
Router(config-router)#network 1.1.1.0   宣告
---------
特权模式:
config t
ping
show ip route
配置模式
int
ip add
no shut
no ip address
----
ip route
----
route rip
network
案例1:配置一个路由

day024-Linux基础-网络2

环境准备:2个PC一个路由器不同网段互通
PC1:
    ip:10.0.0.10
    网关:10.0.0.1
PC2:
    ip:116.63.0.10
    网关:116.63.0.1
R1:
    fa0/0:10.0.0.1
    fa0/1:116.63.0.1

#开始配置 fa0/0接口
Router#config t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#interface fa0/0  #进入fa0/0接口 可以简写 int fa0/0
Router(config-if)#ip address 10.0.0.1 255.255.255.0 #设置IP地址 简写ip add
Router(config-if)#no shutdown   #开启接口   可以简写 no shut
Router(config-if)#exit  #退出到配置模式
Router(config)#exit     #退出到特权模式
Router#

Router#ping 10.0.0.100      #探测是否ping通

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.0.0.100, timeout is 2 seconds:
!!!!!

#配置另外一个接口fa0/1
Router#config t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#int fa0/1
Router(config-if)#ip add 116.63.0.1 255.255.255.0
Router(config-if)#no shut
Router(config-if)#exit
Router(config)#exit
Router#
%SYS-5-CONFIG_I: Configured from console by console

Router#ping 116.63.0.10     #探测是否ping通

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 116.63.0.10, timeout is 2 seconds:
.!!!!
一个.表示初次建立
!!!!表示连接成功
....表示连接失败
命令:tracert -d 域名 探测到达经过的路由器
探测到达百度经过的路由器。跳->几跳 几个路由器
C:\Users\16321>tracert -d www.baidu.com

通过最多 30 个跃点跟踪
到 www.a.shifen.com [110.242.70.57] 的路由:

  1     1 ms     1 ms     1 ms  192.168.21.1
  2     2 ms     2 ms     2 ms  192.168.1.1
  3     7 ms     9 ms    12 ms  123.122.32.1
  4     *        *        *     请求超时。
  5     6 ms     *        *     61.149.203.205
  6     *        *        *     请求超时。
  7     *        *       12 ms  110.242.66.174
  8    12 ms    13 ms    11 ms  221.194.45.130
  9     *        *        *     请求超时。
 10     *        *        *     请求超时。
 11     *        *        *     请求超时。
 12     *        *        *     请求超时。
 13    12 ms    12 ms    11 ms  110.242.70.57

跟踪完成。
案例2:配置两个路由

day024-Linux基础-网络2

#主机配置
PC1:
    ip=192.168.1.100 255.255.255.0
    网关=192.168.1.1
PC2:
    ip=116.63.0.10 255.255.255.0
    网关=116.63.0.10
#路由配置   
R1:
    fa0/0=192.168.1.x
    fa0/1=1.1.1.x
R2:
    fa0/1=116.63.0.x
    fa0/0=1.1.1.x

#配置静态路由:
R1路由器配置:
1)当前fa0/0配置了192.168.1.1
Router>enable
Router#config t
Router(config)#int fa0/0
Router(config-if)#no ip address #删除原来的配置
Router(config-if)#ip address 192.168.1.1 255.255.255.0
Router(config-if)#no shut

2)将fa0/1修改成1.1.1.1
Router(config-if)#int fa0/1
Router(config-if)#no ip address
Router(config-if)#ip address 1.1.1.1 255.255.255.0
Router(config-if)#no shutdown

R2路由器配置:
1)将当前fa0/0配置为1.1.1.2
Router>enable
Router#config t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#int fa0/0
Router(config-if)#ip add 1.1.1.2 255.255.255.0
Router(config-if)#no shut

2)将当前fa0/1配置为116.63.0.1
Router(config-if)#int fa0/1
Router(config-if)#ip add 116.63.0.1 255.255.255.0
Router(config-if)#no shut

--------------查看R1路由表
Router#show ip route
Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
C       1.1.1.0 is directly connected, FastEthernet0/1
C    192.168.1.0/24 is directly connected, FastEthernet0/0

#R1路由器指定静态路由
Router(config)#ip route 116.63.0.0 255.255.255.0 1.1.1.2
#R2路由器指定静态路由
Router(config)#ip route 192.168.1.0 255.255.255.0 1.1.1.1

#测试
PC>ping 116.63.0.10
Pinging 116.63.0.10 with 32 bytes of data:
Reply from 116.63.0.10: bytes=32 time=0ms TTL=126
--------
PC>ping 192.168.1.100
Pinging 192.168.1.100 with 32 bytes of data:
Reply from 192.168.1.100: bytes=32 time=0ms TTL=126
案例3:配置三个路由

day024-Linux基础-网络2

#主机配置
PC1:
    ip=192.168.1.100 255.255.255.0
    网关=192.168.1.1
PC2:
    ip=116.63.0.10 255.255.255.0
    网关=116.63.0.10
#路由配置   
R1:
    fa0/0=192.168.1.x
    fa0/1=1.1.1.x
    静态:ip route 116.63.0.0 via 1.1.1.2
R2:
    fa0/1=2.2.2.x
    fa0/0=1.1.1.x
    静态:ip route 116.63.0.0 via 2.2.2.2
    静态:ip route 192.168.1.0 via 1.1.1.1
R3:
    fa0/1=116.63.0.x
    fa0/0=2.2.2.x
    静态:ip route 192.168.1.0 via 2.2.2.1
---------
三个静态路由器的配置
#全部删除所有的路由器 重新添加3个后进行配置

配置R1:
1)fa0/0
Router>enable
Router#config t
Router(config)#int fa0/0
Router(config-if)#ip address 192.168.1.1 255.255.255.0
Router(config-if)#no shut

2)fa0/1
Router(config-if)#int fa0/1
Router(config-if)#ip address 1.1.1.1 255.255.255.0
Router(config-if)#no shut

3)配置静态路由
Router(config-if)#exit
Router(config)#ip route 116.63.0.0 255.255.255.0 1.1.1.2

配置R2:
1)fa0/0
Router>enable
Router#config t
Router(config)#int fa0/0
Router(config-if)#ip add 1.1.1.2 255.255.255.0
Router(config-if)#no shut

2)fa0/1
Router(config-if)#int fa0/1
Router(config-if)#no ip address
Router(config-if)#ip add 2.2.2.1 255.255.255.0
Router(config-if)#no shut

3)配置静态路由
Router(config-if)#exit
Router(config)#ip route 116.63.0.0 255.255.255.0 2.2.2.2
Router(config)#ip route 192.168.1.0 255.255.255.0 1.1.1.1

配置R3:
1)fa0/0
Router>enable
Router#config t
Router(config)#int fa0/0
Router(config-if)#ip add 2.2.2.2 255.255.255.0
Router(config-if)#no shut

2)fa0/1
Router(config-if)#int fa0/1
Router(config-if)#ip add 116.63.0.1 255.255.255.0
Router(config-if)#no shut

3)配置静态路由
Router(config-if)#exit
Router(config)#ip route 192.168.1.0 255.255.255.0 2.2.2.1
--------------
#验证测试
PC>ping 116.63.0.10
Pinging 116.63.0.10 with 32 bytes of data:
Reply from 116.63.0.10: bytes=32 time=0ms TTL=125

PC>ping 192.168.1.100
Pinging 192.168.1.100 with 32 bytes of data:
Reply from 192.168.1.100: bytes=32 time=1ms TTL=125
案例4:配置动态路由
自动学习过程

day024-Linux基础-网络2

动态路由协议 route rip
#主机配置
PC1:
    ip=192.168.1.100 255.255.255.0
    网关=192.168.1.1
PC2:
    ip=116.63.0.10 255.255.255.0
    网关=116.63.0.10
#路由配置   
R1:
    fa0/0=192.168.1.x
    fa0/1=1.1.1.x
    动态:route rip
    宣告:network 192.168.1.0
    宣告:network 1.1.1.0
    自动学习R2:
            2.2.2.0 via 1.1.1.2
            116.63.0.0 via 1.1.12
R2:
    fa0/1=2.2.2.x
    fa0/0=1.1.1.x
    动态:route rip
    宣告:network 1.1.1.0  network 2.2.2.0
    宣告:network 192.168.1.0  network 116.63.0.0
    自动学习R1:
            116.63.0.0 via 2.2.2.2
            192.168.1.0 via 1.1.1.1
R3:
    fa0/1=116.63.0.x
    fa0/0=2.2.2.x
    动态:route rip
    宣告:network 2.2.2.0  network 116.63.0.0
    自动学习R2:
            192.168.1.0 via 2.2.2.1
            1.1.1.0 via 2.2.2.1
------------
配置R1:
1)fa0/0
Router>enable
Router#config t
Router(config)#int fa0/0
Router(config-if)#ip add 192.168.1.1 255.255.255.0
Router(config-if)#no shut

2)fa0/1
Router(config-if)#int fa0/1
Router(config-if)#ip add 1.1.1.1 255.255.255.0
Router(config-if)#no shut

3)配置动态路由
Router(config-if)#exit
Router(config)#route rip
Router(config-router)#network 192.168.1.0
Router(config-router)#network 1.1.1.0

配置R2:
1)fa0/0
Router>enable
Router#config t
Router(config)#int fa0/0
Router(config-if)#ip add 1.1.1.2 255.255.255.0
Router(config-if)#no shut

2)fa0/1
Router(config-if)#int fa0/1
Router(config-if)#no ip address
Router(config-if)#ip add 2.2.2.1 255.255.255.0
Router(config-if)#no shut

3)配置动态路由
Router(config-router)#exit
Router(config)#route rip
Router(config-router)#network 1.1.1.0
Router(config-router)#network 2.2.2.0

配置R3:
1)fa0/0
Router>enable
Router#config t
Router(config)#int fa0/0
Router(config-if)#ip add 2.2.2.2 255.255.255.0
Router(config-if)#no shut

2)fa0/1
Router(config-if)#int fa0/1
Router(config-if)#ip add 116.63.0.1 255.255.255.0
Router(config-if)#no shut

3)配置动态路由
Router(config-if)#exit
Router(config)#route rip
Router(config-router)#network 2.2.2.0
Router(config-router)#network 116.63.0.0
------------------
#测试验证
PC>ping 116.63.0.10
Pinging 116.63.0.10 with 32 bytes of data:
Reply from 116.63.0.10: bytes=32 time=0ms TTL=125

PC>ping 192.168.1.100
Pinging 192.168.1.100 with 32 bytes of data:
Reply from 192.168.1.100: bytes=32 time=0ms TTL=125

02.网络层次结构

*1.网络拓扑
网络层次结构
       核心层:主要部署路由器设备,用于连接外网线路,还要具备冗余能力
       汇聚层:主要部署三层交换设备,用于相应安全访问控制 进行链路汇聚
       接入层:主要部署二层交换设备,用于终端设备接入

一层交换机:只支持物理层协议。
二层交换机:支持物理层和数据链路层协议。
三层交换机:支持物理层,数据链路层及网络层协议。

day024-Linux基础-网络2

​ 基本网络层次划分标准示意图

*2.网络类型
   局域网:本地私有的一个网络范围。规模较大的局域网,也会称为园区网。
   教室 家庭  公司内 校园
   公网: 全球任意一个可以上网的地方都可以直接访问到

   城域网:网络的覆盖面积达到了一个城市,就可以称为城域网。

   广域网:覆盖面积 达到了全国或全球,就称为广域网,全球最大的广域网就是Internet互联网。
*3.网络层次模型(OSI七层模型)
    OSI是Open System Interconnection的缩写,意为开放式系统互联。国际标准化组织(ISO)制定了OSI模型,该模型定义了不同计算机互联的标准,是设计和描述计算机网络通信的基本框架。OSI模型把网络通信的工作分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
OSI七层模型功能介绍

day024-Linux基础-网络2

day024-Linux基础-网络2

*4.OSI七层模型详解
面试题:说一下七层模型都有哪七层?
应用层

day024-Linux基础-网络2

主要就是提供应用程序可以接入网络接口,并根据程序的不同对应不同的接口协议。
表示层

day024-Linux基础-网络2

会话层

day024-Linux基础-网络2

传输层

day024-Linux基础-网络2

负责网络中端到端的连接(TCP、UDP).
网络层

day024-Linux基础-网络2

网络层的主要作用就是路由和寻址,主要接触到的是IP协议,即IP地址。 
数据链路层

day024-Linux基础-网络2

物理层

day024-Linux基础-网络2

Layer1物理层:物理层标准规定了信号、连接器和电缆要求、接口类型、线缆类型、设备(集线器hub)。

单工: (广播电台)通讯时候。只有一方作为发送方,另一方作为接受方

半双工:(对讲机) 通讯的某一时刻,只有一方作为发送方,另一方作为接受方,通讯时刻发生转变,发送方可以变为接收方,接收方可以变为发送方

全双工:(电话)    同一时刻,双方皆可以是发送方,又可以是接收方

03.数据包封装与解封装

封装
封装过程:由上至下进行封装
        应用层、表示层、会话层  PDU 数据
        传输层:分段 TCP协议
        网络层:打包 TCP协议+IP地址
        数据链路层:成帧  TCP协议+IP地址+MAC地址 
        物理层:位      数据成为比特

day024-Linux基础-网络2

解封装
拆包过程:由下至上进行拆包
        物理层:位  比特
        数据链路层:查看MAC地址
        网络层:查看IP地址
        传输层:查看TCP协议
        前三层:数据内容

不知名端口:1024以上的端口称为不知名端口
cat /proc/sys/net/ipv4/ip_local_port_range

day024-Linux基础-网络2

04.TCP/IP模型(4层模型)

1.OSI7层模型与TCP/IP模型(DOD)对应关系

day024-Linux基础-网络2

2. TCP/IP协议簇相关协议汇总

day024-Linux基础-网络2

3.应用层协议介绍
面试题: 面试官问 ssh默认端口 http默认端口?
FTP         21          明文协议,文件传输协议,基于TCP
TFTP        69          简单文件传输协议,基于UDP
SSH         22          安全外壳协议,远程连接,加密
Telnet      23          明文协议,远程连接
SNMP        161/162     简单网络管理协议,基于UDP
SMTP        25          简单邮件传输协议,基于TCP
HTTP        80          超文本传输协议
HTTPS       443         超文本传输安全协议
DHCP        67/68/546   动态主机设置协议,C(67),S(68),546(V6)
DHCP原理图

day024-Linux基础-网络2

day024-Linux基础-网络2

ARP表 静态表  动态ARP表
192.168.21.254  MAC 112233  静态  比较固定的人员
192.168.21.253 MAC 44556  动态 适用大多数场景


DNS称为域名系统,在网站运行中起到了至关重要的作用,主要作用是负责把网站域名解析为对应的IP地址。
一般域名提供商,提供的dns服务器,都是走udp53端口的。
3.DNS解析过程
域名是什么?
www.baidu.com--->DNS--->IP地址


举个例子,https://www.baidu.com,这个其实并不是域名,其中https是指协议,去掉https后,www.baidu.com.(注意最后面有一个点号)才是真正的域名。

每个域名的最后面都有一个点号 "." 表示根域名,为了方便在实际使用的时候被省略了。

根域名的下一级就是顶级域名了,.com 也就是顶级域名,常见的顶级域名后缀有.com、.cn、.net、.org 等,这些都是固定的,用户不能自己修改,只能选择。

顶级域名的下一级又是权威域名,如baidu.com中的.baidu,这个权威域名就是我们自己可注册的域名。
www.baidu.com www.weibo.com www.linuxnc.com
顶级域名下就是主机名了,www是指主机名,这个是我们可以自己定义的,通常在http服务器如nginx中可以修改。

http https 协议
.com .cn .org .net. ...  顶级域名
baidu sina weibo linuxnc 权威域名
www.baidu.com --->显示百度的主页
news.baidu.com--->显示的百度的新闻页面

www.baidu.com的www  news.baidu.com 的news 表示主机名 表示不同的业务 不同的页面

.com.
.cn.
.org.

.是根域名
域名解析过程分析
/etc/hosts: 作用 本地DNS解析 默认没有,默认里面解析自己的主机名称
C:\Windows\System32\drivers\etc   # windows的hosts存在的位置

DNS域名解析流程: 说的windows的解析流程



下面就还以www.baidu,com这个网址来分析一下dns的解析过程。

当浏览器拿到输入的www.baidu.com、查询本地hosts文件是否有对应关系,如果有返回,如果没有,则查询本地DNS
本地DNS是我们设置的223.5.5.5,也可能是自动获取的。简称LDNS localdns

找到本地dns后,它也会先去查询一遍它自己的缓存,如果有记录就返回,如果没有记录,它将开始要去我们前面提到的根域名服务器查询了。注意由于根域名服务器ip地址一般都是固定的,所以本地dns服务器一般都内置了根域名服务器ip地址。https://www.uedbox.com/post/50977/

目前全球一共有13个根域名服务器(这里并不是指13台服务器,是指13个ip地址,按字母a-m编号),为了能更高效完成全球所有域名的解析请求,根域名服务器本身并不会直接去解析域名,而是会把不同的解析请求分配给下面的其他服务器去完成,下面是dns域名系统的树状结构图。

day024-Linux基础-网络2

day024-Linux基础-网络2

注意dns域名服务器一般分三种,分别是根域名服务器(.)、顶级域名服务器(.com)、权威域名服务(.baidu.com) 。

当根域名接收到本地dns的解析请求后,发现是后缀是.com,于是就把负责.com的顶级域名服务器ip地址返给本地dns。

本地dns拿着返回的ip地址再去找到对应的顶级域名服务器,顶级域名又把负责该域名的权威服务器ip返回去。

本地dns又拿着ip去找对应的权威服务器,权威服务器最终把对应的主机ip的解析记录(俗称A记录)返回给本地dns。

本地dns会将解析后的ip地址信息进行缓存,缓存好将A记录信息返回给客户端。

客户端收到本地dns响应的A记录信息,会将A记录缓存到本地,然后使用解析后的ip地址访问www.baidu.com。

至此就完成了域名解析的全过程。

下面用一张图来展示上面迭代查询的过程。

day024-Linux基础-网络2

解析期间涉及到两个特殊查询:
客户端---本地dns服务器:递归查询
本地dns服务器---根域名服务器  顶级域名服务器  权威域名服务器:迭代查询
所谓递归查询过程就是 “查询的递交者” 更替, 而迭代查询过程则是 “查询的递交者”不变。

A记录:
从域名到IP的解析过程,被称为A记录;www.baidu.com---1.1.1.1

获取A记录命令方法:yum -y install bind-utils

1) dig www.baidu.com
    dig @223.5.5.5 www.baidu.com +trace   ---显示完整DNS解析过程
2) nslookup www.baidu.com
3) host www.baidu.com
4) ping www.baidu.com

面试题:
1.浏览器输入www.baidu.com 查询浏览器缓存 有返回IP 没有则查询本地的HOSTS
2.如果HOSTS有返回IP 如果没有继续查询本地的DNS
3.本地DNS一般是我们自己配置的比如223.5.5.5 8.8.8 114.114.114.114,查询本地DNS是否有对应的IP 如果有返回给浏览器 如果没有则查询.根服务器
----------1-3过程称为递归查询---------------
4.根服务器不存储域名解析,会给LDNS返回顶级域.com的服务器IP地址
5.LDNS重新请求.com域名服务器 .com不存在域名解析 .com会返回权威域名服务器的IP地址给LDNS
6.LDNS重新请求baidu.com权威域名服务器,权威域名服务器就是我们自己配置的A记录解析,将A记录对应的IP地址返回给LDNS
7.LDNS拿到后自己缓存一份 返回给浏览器一份
8.浏览器和拿到的百度服务器IP地址建立连接
---------迭代查询 有去有回

1.浏览器--->本地HOSTS-->LDNS--->
2.LDNS--->根 根返回 顶级域.com
3.LDNS--->顶级域  顶级域返回权威域
4.LDNS--->权威域服务器 权威域名返回 A记录解析对应的服务器IP地址
5.浏览器-->百度IP建立连接



今天重点:
1.安装模拟器 配置静态和动态路由 实现不同网段通信  练习
2.OSI七层模型   TCP/IP四层模型 掌握重点
3.DNS解析流程 掌握重点
正文完
 0
评论(没有评论)