本章一些配置命令介绍基于该软件
一.简介
1.网络接口名称规则
网络接口名称
传统上,Linux中的网络接口被枚举为eth0、eth1、eth2等。然而设置这些名称可能会导致更改哪个接口获取作为设备添加和除的名称。Red Hat Enterprise Linux7中的默认命名行为是基于固件、设备拓扑结构和和设备类型。
接口名称包会以下字符:
以太网接口以en开头,WLAN接口以w开头,WWAN接囗以ww开头。
下一个字符表示适配器的类型,其中o表示板载,s表示热插拔插槽,p表示PCI地理位置。
默认情况下不使用,但管理员也可以使用,x用于合井MAC地址
最后,数字N用于表示素引、ID或端口。
如果无法确定固定名称,将使用传统名称,例如ethN。
例如,第一嵌入式网络接口可以被命名为en01,而PC1卡网络接口可以被命名为enp2s0。
如果用户知道端口和端口名之间的关系,则新名称可以更容易地区分两者,但缺点是用户不能假设一个具有一个接口的系统调用接口eth0。
# ls /etc/sysconfig/network-scripts/
//查看网卡配置
注意:对网卡ens33进行操作时最好先进行cp备份或者提前拍个快照
2.NetworkManager服务
网络管理器(NetworkManager)是一个动态网络的控制器与配置系统,它用于当网络设备可用时保持设备和连接开启并激活。默认情况下,CentOS/RHEL7 已安装网络管理器,并处于启用状态。
查看网络管理程序的状态:
systemctl status NetworkManager
查看网络子管理程序的状态:
systemctl status network
3.配置网络的工具
命令行配置:
配置文件:vim
命令行:nmcli
eg:
# vim /etc/sysconfig/network-scripts/ifcfg-ens33 //不一定都是ens33,是根据机器和插入的网卡而定的
# nmcli device //安装yum -y install NerworkManager
图形配置:
简易图形:nmtui
图形界面:nm-connection-editor
二.配置网络参数
1. 手动配置IP
手动配置ip实现客户机和服务器的通信
配置网络参数:
先备份网卡配置文件,再修改!!!!
# vim /etc/sysconfig/network-scripts/ifcfg-ens33
根据主机自动配置的网络信息,改为手动,按照自动给的参数手动配置上去:
重启网络配置:
#systemctl restart network
验证动配置后网络是否能用
查看ip和验证:
# ip a
//查看自己ip地址
# ping ip地址
//与该ip的机器进行通信,前提两台机器vmnet相同(处于同一网段)
2. 主机名
改名方式1:
- 查看主机名:# hostname
- 配置主机名:# hostnamectl set-hostname qianfeng.example.com
改名方式2:
- 查看和配置主机名:# cat /etc/hostname
重启生效:
- reboot
3. 网络测试工具
测试工具:
# ip a //查看所有IP(ifconfig )
# ip route //查看路由,查看网关]
# ip r //查看网关
# ip neigh //另一台主机ping通,查看邻居
# ping 127.0.0.1
ports and services:
要知道端口的概念和查看的方法
4. 初始化服务器
最小化安装 | |
1.为服务器配置root密码 | |
2.配置IP地址(VMNAT8) | |
3.配置YUM源 | 自动挂载光驱/阿里YUM 配置YUM仓库 |
4.关闭防火墙 | # systemctl stop firewalld # systemctl disable firewalld //防止开机自启防火墙 systemctl status firewalld //查看防火墙是否关闭 |
5.selinux | 临时关闭: # setenfoce 0 //设置selinux防火墙为0 永久关闭: # vim /etc/sysconfig/selinux SELINUX=disabled |
6.安装常用程序 | lrzsz elinks wget net-tools bash-completion |
7.关机快照 |
三.OSI和TCP/IP模型
1.简介
Open System Interconnection 开发系统互联模型
开放式系统互联:
国际标准化组织(ISO)制定7
定义了不同计算机互联的标准
设计和描述,计算机网络通信的框架 - 全世界网络通信的工作分为7层
包可以说是全能性术语
帧用于表示数据链路层中包的单位
数据包是 IP 和 UDP 等网络层以上的分层中包的单位
段则表示 TCP 数据流中的信息
消息是指应用协议中数据的单位
不难看出,TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”
制定OSI的优势:
开发
厂商兼容
易于理解、学习
模块化工程
故障排除
2.OSI:7层次结构/功能
应用层
应用层由来:用户使用的都是应用程序,均工作于应用层,互联网是开发的,大家都可以开发自己的应用程序,数据多种多样,必须规定好数据的组织形式 。
应用层功能:规定应用程序的数据格式。
例:TCP协议可以为各种各样的程序传递数据,比如Email、WWW、FTP等等。那么,必须有不同协议规定电子邮件、网页、FTP数据的格式,这些应用程序协议就构成了”应用层”。
表示层
格式/压缩/加密
快速传递
安全传递
会话层
身份信息
全双工/半双工
电话/对讲机
解除和建立和别的接点的联系
传输层
传输层功能:建立端口到端口的通信
分段/重组/端口号 -- 传输效率
传输层的由来:网络层的ip帮我们区分子网,以太网层的mac帮我们找到主机,然后大家使用的都是应用程序,你的电脑上可能同时开启qq,暴风影音,等多个应用程序,
那么我们通过ip和mac找到了一台特定的主机,如何标识这台主机上的应用程序,答案就是端口,端口即应用程序与网卡关联的编号。
数据链路和 IP 中的地址,分别指的是 MAC 地址和 IP 地址。前者用来识别同一链路中不同的计算机,后者用来识别 TCP/IP 网络中互连的主机和路由器。在传输层也有这种类似于地址的概念,那就是端口号。端口号用来识别同一台计算机中进行通信的不同应用程序。因此,它也被称为程序地址。
tcp协议:
可靠传输,TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割。
udp协议:
不可靠传输,”报头”部分一共只有8个字节,总长度不超过65,535字节,正好放进一个IP数据包。
网络层
IP地址/寻址/路由
为数据包选择路由
网络层定义了一个IP协议
你想,我是这个教室的一个学生,我想找隔壁教室一个叫老王的学生,我也不认识老王,那怎么办,我大叫?老王在另外一个教室肯定是听不到的。找教室的负责人,这个教室的负责人就负责和隔壁教室的负责人说话,说我们教室的有个学生要找你们教室的老王。往外传的东西交给负责人就可以了,内部的话是通过广播的方式,对外的东西广播失效。教室的负责人就是网关,网关即网络关口的意思。
(1)物理层使用的中间设备叫转发器(repeater)
(2)数据链路层使用的中间设备叫做网桥或者桥接器(bridge)
(3)网络层使用的中间设备叫做路由器(router)
(4)在网络层以上使用的中间设备叫做网关(gateway)。用网关连接两个不兼容的系统需要在高层进行协议转换。
数据链路层
传输有地址的帧以及错误检测功能
MAC地址/局域网 -- 分段目标、局部地址、邮递员
早期的时候,数据链路层就是来对电信号来做分组的。以前每个公司都有自己的分组方式,非常的乱,后来形成了统一的标准(标准就是协议),即以太网协议Ethernet。
Ethernet规定:
一组电信号称之为一个数据包,或者叫做一个“帧”
Mac地址是用来标识你这个教室的某个位置(计算机 - [网卡] 在局域网中的具体位置),IP地址是用来标识你在哪个教室(哪个局域网)
你要跨网络发包你是不是要知道对方的IP地址,比如你要访问百度,你肯定得知道百度服务器的IP地址。计算机在发包前,会判断你在哪个教室,对方在哪个教室,如果在一个教室,基于mac地址的广播发包就OK了;如果不在一个教室,即跨网络发包,那么就会把你的包交给教室负责人(网关)来转发。Mac地址及IP地址唯一标识了你在互联网中的位置。
数据链路层中会把网络层的数据包封装到数数据链路层的数据位置,然后再添加上自己的包头,再发给物理层,物理层发给网关,网关再发给对方教室的网关,对方教室的网关收到后在那个教室做广播。
物理层
以二进制的形式在物理媒体上进行传输
传输介质/比特流 -- 电流/光/无限信号/4G/5G
案例:
(1)发送端(封装数据)
① 应用层准备要传输的数据;
② 传输层把文件进行分段并编号;(数据段)
③ 网络层把传输层的每一个数据包增加原IP地址和目标IP地址;(数据包)
④ 数据链路层把每个数据加上MAC地址;(数据帧)
- 使用自己的子网掩码,判断自己和目标地址分别在哪个网段,若在同一个网段(不通过路由器),通过ARP协议广播的方式得到目标IP地址的MAC地址,然后就能封装出一个数据帧进行组播协议发送;
- 如果子网掩码不是一个网段,通过ARP协议广播的方式得到路由器(网关)的MAC地址,然后把数据通过交换机发送到路由器M2(图中路由器),因为M2和M3是点对点通信,没有别的主机,所以它们之间的MAC地址就是FF
⑤物理层把数据帧变成数字信号(bit流),交给物理层传输
(2)接收端(解封):
① 交换机Switch1(图中的交换机)接收bit流,能对数据进行存储转发。它根据数据帧的MAC地址,确定数据是从哪来的(是上一跳不是发送端),要去哪
② 路由器M2获取交换机的数据包,识别其中的IP地址,根据路由表选择出口,它无法识别数据段内容
③ 路由器M2到M3是点对点通信,遵守PPP协议
④ PC3收到bit流后,数据链路层发现MAC地址是自己的,去掉MAC地址给它的网络层,网络层去掉IP地址给传输层,传输层把数据给应用层,应用层把各个数据拼接起来
3.TCP/IP:5层结构/功能
OSI模型的应用层、表示层、会话层合并成了应用层
4.TCP/IP:4层结构/功能
OSI模型的应用层、表示层、会话层合并成了应用层
OIS模型的物理层、数据链路层合并成了网络接口层
5.区别
OSI | 推出的时间早 |
只有理论,没有实践 | |
TCP/IP | 传输控制协议/互联网协议 Trancation Control Protocol/Inetnet Protocol |
美国军方由实践总结出的理论 | |
当今通信标准 |
6.TCP/IP:数据单元/DU
牛奶从鲜奶变成奶粉,要经历很多到工序。
信息从产生到接收,也会有些变化。为了方便交流,通信模型不同的模块对信息加工,并进行统一命名
应用层数据 | AP DU 应用数据单元 ApplicationProtocol DataUnit ---应用协议数据单元 |
传输层数据 | segment DU 分段 数据 |
网络层数据 | packet DU 包 数据 |
数据链路层数据 | frame DU 帧 数据 |
物理层数据 | bit DU 比特 数据 |
7.封装和解封装
信息从一台计算产生,经过TCP/IP模型加工。后传递到另一台计算机。
这个通信过程就像,快递从厂家包装到顾客收到货物拆包一样。
我们把这个通信过程,称作数据的封装(发送)和数据解封装(接收)。
从而更好的理解,数据通信原理。
左边发送:封装--逐层往下
右边接收:解封装--逐层往上
下层为上层服务,同层功能相同
(应用层)户信息转换为数据,以便在网络上传输
(传输层)数据转换为数据段,并在发送方和接收方主机之间建立一条可靠的连接
(网络层)数据段转换为数据包或数据报,并在报头中放上逻辑地址,这样每一个数据包都可以通过互联网络进行传输
(数据链路层)数据包或数据报转换为帧,以便在本地网络中传输。在本地网段上,使用硬件地址唯一标识每一台主机。
(物理层)帧转换为比特流,并采用数字编码和时钟方案
四.TCP/IP协议族
应用层 | HTTP/超文本传输协议/网站 -- 淘宝 SSH/远程连接协议/远程控制 -- QQ远程桌面 FTP/文件传输协议 -- 电影天堂 SMTP/简单邮件传输协议/EMAIL -- QQ邮箱 DNS/域名服务/WWW -- baiyun.com |
传输层 | TCP/传输控制协议/可靠 -- 鸡毛信and挂号信 UDP/用户数据报协议/不可靠 -- 普通信 |
网络层 | IP/互联网协议/寻址 -- 全球地址 ICMP/网络消息管理协议/测试 -- 通信兵 |
数据链路层 | MAC -- 家到邮局的地址 |
物理层 | 网线 -- 公路 光纤 -- 航道 |
五.进制转换
二进制和十进制的换算
平时工作中能出现的二进制范围:0 -- 255(8位)
十进制转二进制:除二取余法
单位换算
比特=bit=b=1/0
字节=byte=B=8个比特
1KB=1024B
1MB=1024KB
1GB=1024MB
1TB=1024GB
每8位进行解码:
比如,输出或记录一段信息。使用这种方法该怎么做呢?
520
000001010000001000000000
00000101=5
00000010=2
00000000=0
六.物理层
关心的是物理层进行传递信号的介质是什么以及信号的种类
(两台主机进行互联)
1.信号
模拟信号:
不断变换的物理量 -- 适用电话网络
数字信号:
两种恒定物理量 -- 分立的脉冲信号 -- 适用计算机网络
抗噪音和抗衰减比较强
2.介质
1. 双绞线
EIA/TIA 568B标准
外形:
八根线芯,两两互绞
功能分类:
屏蔽性 -- 有绝缘层
非屏蔽性 -- 无绝缘层
速率分类:
Wat 5 /5类线/10M100M
cat 5e /超五类线/10M100M
cat 6
接口:
RU45/水晶头
线序:EIA/TIA568B --- 橙白、橙、绿白、,蓝、蓝白、绿,棕白、棕
标准网线:两端线序相同。
一和二负责发送0和1,三和六负责接收0和1
两台机器想在同一个局域网进行游戏,最基本的方式就是可以通过双绞线将两台机器连接起来 --- 物理层
2. 光纤
光纤是光导纤维的简写,是一种由玻璃或塑料制成的纤维,可作为光传导工具。传输原理是“光的全反射”
多模
单模
纤芯粗
纤芯细
低速
高速
传播距离近
传播距离远
便宜
贵
FC/ST/LC/SC/PC/APC
1、FC接口,外壳材质为金属,接口处有螺纹,和光模块连接时可以固定的很好;
2、ST接口,材质为金属,接口处为卡扣式,常用于光纤配线架;
3、SC接口,材质为塑料,推拉式连接,接口可以卡在光模块上,常用于交换机;
4、LC接口,材质为塑料,用于连接SFP光模块,接口可以卡在光模块上;
5、PC接口,微球面研磨抛光;
6、APC接口,呈8度角并做微球面研磨抛光。
七.数据链路层
单靠网线组成的网安全性不强,局限性大
当机器2想把消息传给机器1时,通过广播的方式传递,但是此时机器3也会听到,这样就导致了不安全的问题
通过交换机,有单一的通道,源MAC地址和目标MAC地址实现信息的安全传递
实现多台机器在单一的通路(在同一个局域网内)进行通信是数据链路层所进行的
1.地址
(计算机的网卡)
MAC地址:
媒体访问控制地址,Media Access Control Address
结构:
48位2进制数字
12位16进制数字
示例:
38-7A-??-B1-C5-??
前六位是厂商标识
后六位是硬件标识
2.帧封装
MAC地址是怎么写到信息当中的呢?
目标MAC // 源MAC // 数据 // CRC
3.交换机工作原理
学习/广播/转发/更新
交换机是围绕这个交换表进行的
假设当交换机第一次给ABCD四个机器插上线,那么此时MAC地址交换表是空的
学习:交换机学习发送者的地址和端口,通过学习了A的地址和端口号,在二次通信的时候,比如D要发送信息给A,那么交换机会实现准确的发送给A(但A却无法回消息,因为不知道D的地址),除了A,BCD的地址和端口此时还是不知道,这时候就通过广播知道BCD的地址了
广播:除了源端口,向所有端口扩散信息,即寻址,A通过广播给BCD发送消息,此时BCD的机器有两种结果,一是丢弃无视,二是回消息,那么这时交换机就会学习到了回消息的机器的源地址和端口,记录在MAC地址交换表当中
单播:通过广播将所有与交换机连接的机器的地址和端口都记录下来后,就能实现两台机器之间的交流了
更新:比如地址在规定时间内没有进行交流的话,那么就会从地址表中擦除,
其内部是背板矩阵的原理实现单一通路
4.组建局域网
两台主机通信 --- 第一个小实验:
成功界面:
第二个小实验:
搭建完后PC2 ping其它机器以及自己,这样交换机学习了与其相连的所有机器的地址后才能存放进交换地址表,实现单播
这个就是交换机的mac交换地址表,注意这个交换表是会进行更新的
show mac-address-table
5.VLAN
VLAN:虚拟局域网络(Virtual Local Area Network)
比如一个VLAN就像一个部门
PCA和PCB是一个VLAN(10),PCC和PCD是一个VLAN(20)
潜规则:交换机默认的接口都在VLAN1中(接口是指机器与交换机连接的接口号数)
交换机1上配置:
1.
enable -- 特权
2.
config t -- 进入配置模式(config)
3.
vlan 10 -- 创建局域网10
4.
vlan 20 -- 创建局域网20
5.
interface fastethernet0/1 -- 进入接口模式,必须在接口模式下才能输入,这里0/1是第一个接口
6.
switch access valn 10 -- 将在该接口模式下所对应的端口加入VLAN10
5和6就实现了将PC2划入了虚拟局域网VLAN10
7.
interface fastethernet0/2
8.
switch access valn 10
这样PC2和PC3就在同一块虚拟局域网内了,相当于他们是同一个部门的人,这样PC2可以pingPC3,也就是2和3互通了,当他们与服务器和PC4互通
9.
多次输入exit直到退出特权模式
show vlan -- 查看此时的VLAN表
6.TRUNK
TRUNK:在同一条路线上,传递多个VLAN的信息
VLAN10的主机传递信息会被交换机打上VLAN10的标签再通过交换机传递到另一台交换机,根据该标签进行传递给另外一样在VLAN10中的指定主机,同时将该标签去掉
VLAN标签只存在在TRUNK路线
步骤:
用线缆将两台交换机都连接后,每一台交换机都要进入该线缆所连接的对应的接口模式中,然后配置TRUNK
int f0/3
switch mode trunk
两台交换机都要进行配置
八.网络层
跨域网络通信,需要网络层,需要IP地址
如果只靠物理层和数据链路实现跨域网络通信:
比如给30w的主机,需要许多台交换机进行连接,这样会导致广播域太大了,造成寻址不便,由于交换机要进行转发就必须要有主机的mac地址,而通过广播的方式知道30w主机的mac地址,很不方便
网络层的核心目的就是分割广播域,其对应的就是路由器,同时解决寻址不便的问题以及跨网通信,利用IP地址这种逻辑性的、具有代表性的地址
比如现实生活中的某市某区某小区一栋1号和某市某区某小区一栋2号,这种逻辑性的地址,由大到小逐渐缩小范围,这里的某市某区某小区一栋就是一种具有代表性的地址
192.168.42.131的主机要给200.190.10.131的主机发送信息,网关会根据该目标ip中具有代表性的200.190.10的网段将包丢进去,剩下的就交给该局域网内的交换机进行查找
路由器的一个接口就是一个网段,实现了分割广播域
1.IP地址
简介:
32位二进制 -- 每八位用.隔开,然后转换位10进制标识
前24位是网络部分·,后8位则是主机部分
分类:
A类:1~126
2的24方 -- 大
126.0.0.0
127的地址被保留了,回环地址
B类:128~191
2的16方 -- 中
C类:192~223
2的8方 -- 小
D类:224~239 -- 组播
E类:240~255 -- 科研
私有IP分类
A类:10.0.0.0~10.255.255.255
B类:172.16.0.0~172.31.255.255
C类:192.168.0.0~192.168.255.255
我们所使用的ip一直在变换,是因为运营商在我们不使用ip的时候将其给了别人使用 -- 一个ip多人共用
子网掩码
32位2进制数字 -- 运算出IP地址的网络部分
A类:255.0.0.0
B类:255.255.0.0
C类:255.255.255.0
子网掩码中为1部分,对应IP地址的网络段
IP地址和子网掩码,通过逻辑与运算得出是不是同一个网络段,可不可以进行通信
子网掩码和IP是绑定在一起的
两个IP地址是不是同一网段,步骤如下:
1.IP地址转换为二进制
2.子网掩码转换为二进制
3.IP地址和子网掩码逻辑运算
4.得出网络地址(这个IP属于哪个网络)
192.168.1.2:
192.168.1.0 (算出的是网络地址:代表着一群地址)
192.168.1.254:
两个IP地址算出的网络地址都相同可以得出他们是同一个网段,可以直接通信
哪个网段的:192.168.1.0网段
总数是256个:192.168.1.0到192.168.1.255
可用的IP地址是254个:除去网络地址(1.0)和广播地址(1.255)
2.网络层封装
要把一个数据传到另一端,要在数据前面加160个二进制(1字节对应8个二进制)
3.路由器的工作原理
有网络A和网络B,网络A的IP地址范围为 “192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上, TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机(如附图所示)。网络B向网络A转发数据包的过程也是如此。
路由表记得是网段和接口等4~5种内容,接口是数据包从哪走(发)就记哪,数据包到路由器后由路由表决定数据包从哪个接口发出去
同网段(相同网络地址)直接通信,不同网段靠路由器
4.路由表
直连网段:
路由器的一个接口连着一台交换机,同时给该路由器配上ip,就像给计算机配上ip插上网线一样,这样就形成了一个直连网段,这时候路由器的路由表就有两个信息,一个是路由器配上的ip网段,一个则是计算机的ip网段
比如这种,路由器的路由表中有交换机的地址网段以及路由本身的ip地址网段(网络地址:192.190.12.0)
但是路由器本身的接口是有限的,由于距离的原因,不可能像这样都连在同一台路由器上实现分割广播域,实现不同网段之间的通信,这时候就可以通过不同路由器之间的连接来实现,也就是非直连网段
非直连网段:
这种像通过3网线将路由器连接后路由器的路由表不知道网段接口以及网段的就称为非直连网段
如何对非直连线段的路由器的路由表进行更新?
5.实验
需要这款软件:
两个网络的互通(直连网段):
1.建立两个局域网
2.使用一台路由器连接两个网络
3.为路由器的接口配置本网段的IP地址(一般选本网段的最小的或者最大的地址)
4.机器记得配上网关的地址,这样不是本网段的数据包才能发给网关让网关丢给别的网段
5.最后记得计算机命令行窗口ping一下互通
同时可以点击这个观察数据包得传送状况
三个网络得互通(非直连网段):
配置步骤和两个网络得互通差不多
注意:
关于PC得网关地址一定要配准确,网关地址一定和是和PC一样在本网段得
路由器得接口得地址记得对应准确写入
每个网段独立通信成功后再去测整体
此时PC2如何从1网段到3网段最后到达2网段的PC3实现三个网络的互通?
这时候就要给路由1的路由表中写入2网段的网络地址以及发包出去的接口
进入路由1的命令行窗口:
enable
ip route 192.168.2.0 255.255.255.0 f0/1
show ip route - - 查看路由表
此时PC2就可以给PC3发包了,同时,路由器2也得更新,这样PC3就能把包返回给PC2