后面也会持续更新,学到新东西会在其中补充。
建议按顺序食用,欢迎批评或者交流!
缺什么东西欢迎评论!我都会及时修改的!
在这里真的很感谢这位老师的教学视频让迷茫的我找到了很好的学习视频
协议数据单元PDU
数据报文在网络中传输数据,会把这个数据切分成一个小块,在网络中不会把一个1G数据都传过来,买个大家具会给组装好成一体发过来吗,运输就太困难了会把它拆解成一小块一小块的。
在物理层数据包是位,物理层解决的是物理连接问题。
数据在数据链路层传输有个目标地址、源地址,数据是有一定的格式,多少字节到多少字节或者多少位到多少位,存的是数据的这个报文中的源地址,哪块到哪块存的是目标地址是有讲究的,报文是有格式的就是帧在数据链路层。
网络层有数据报文名称叫做数据包
这些单位统称为PDU(数据报文)叫做协议数据单元。
三种通讯模式
单播:就是目标发一个信息目标就一个主机比如A到D。比如发消息一对一,适用点对点。数据要安全的话还是得单播发,那么A给D发数据的时候,注意这里是目标主机是一个并不代表B和C收不到信息。比如在教室里老师点名同学讲话,这种方式是单播但是别人都听得见。代表着B和C可以收到报文。单播不意味着安全,只是默认网卡设置为不收,若是网卡设置为混杂模式就会都收。可以窃听捕获网络中的信息了,抓包工具就产生了。单播比较多。
广播:一个数据发出去,目标是所有(一定范围内的所有)。
组播:目标通知几个并不是全部。
广播和主播比方说有人自作多情认为希望给所有人都发,那如果收到数据报文的人仔细分析是不要的。就是一种骚扰的多余信息。
ens160: <BROADCAST,MULTICAST,UP,LOWER_UP>
广播 组播
冲突域和广播域
冲突域:当两个设备同时向外发送数据报文同时发的话就是打架了。认为这两个设备在同一个冲突域。有时候会造成数据破坏,就像两个车对着开。一个冲突域中计算机最好就一台,要不然冲突了就会重发。
广播域:指的是一个网络设备发送广播,如果另一个计算机收到广播了,我们就在同一个广播域中。一个计算机发消息,同一个广播域中的计算机都会收到,机器发了一个小广告所有计算机都收到,就会影响性能。
三种通讯机制
单工:只能朝一个方向发,不能反向发叫做单向通道。比如喇叭音响收音机。
半双工:是你给我发我给你发,但是不能同时发。比如对讲机。
全双工:你给我传我给你传。比如手机。
mii-tool:
FD 全双工 HD半双工
[root@CentOS7 ~]# yum install net-tools -y
[root@CentOS7 ~]# mii-tool -v ens33
ens33: negotiated 1000baseT-FD flow-control, link ok 代表网卡目前状态是没有问题的
product info: Yukon 88E1011 rev 3
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
link partner: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
1000baseT-FD 1000兆全双工模式。
100baseTx-HD 100兆半双工。
link ok 代表网卡目前状态是没有问题的
ethool:
full 全双工 half 半双工
[root@CentOS7 ~]# ethtool ens33
Settings for ens33:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full 支持这么多模式10兆半双工全双工
100兆半双工全双工1000兆半双工全双工
Advertised pause frame use: No
Advertised auto-negotiation: Yes 自动协商 决定采取什么方式。
Advertised FEC modes: Not reported
Speed: 1000Mb/s 结果1000兆
Duplex: Full 结果全双工
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes 当前网卡没问题的
Advertised auto-negotiation 自动协商 决定采取什么方式。
Speed: 1000Mb/s 结果1000兆
Duplex: Full 结果全双工
Link detected: yes 当前网卡没问题的
加一个网卡
[root@RockyLinux9 sysconfig]#ip a
。。。。。
4: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:ef:9f:80 brd ff:ff:ff:ff:ff:ff
altname enp11s0
inet 192.168.111.153/24 brd 192.168.111.255 scope global dynamic noprefixroute ens192
valid_lft 1762sec preferred_lft 1762sec
inet6 fe80::d7ab:d5ab:8c37:3b9b/64 scope link noprefixroute
valid_lft forever preferred_lft forever
目前这个网卡是up,代表网卡现在是和网线相当于连着的
[root@RockyLinux9 sysconfig]#ethtool ens192
Settings for ens192:
Supported ports: [ TP ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Speed: 10000Mb/s
Duplex: Full
Auto-negotiation: off
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
MDI-X: Unknown
Supports Wake-on: uag
Wake-on: d
Link detected: yes
Link detected: yes 网卡是连接状态。
判断网线是否断了
4: ens192: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN从UP变成DOWN了 group default qlen 1000
link/ether 00:0c:29:ef:9f:80 brd ff:ff:ff:ff:ff:ff
altname enp11s0
[root@RockyLinux9 sysconfig]#ethtool ens192
Settings for ens192:
Supported ports: [ TP ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Speed: Unknown!
Duplex: Unknown! (255)
Auto-negotiation: off
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
MDI-X: Unknown
Supports Wake-on: uag
Wake-on: d
Link detected: no
Link detected: no 网卡断了。
修改网卡名和ip(centos7、centos9)
centos7:
修改IP
[root@CentOS7 ~]# cd /etc/sysconfig/network-scripts/
[root@CentOS7 network-scripts]# ls
ifcfg-ens0 ifdown-ippp ifdown-routes ifup ifup-ipv6 ifup-ppp ifup-tunnel
ifcfg-lo ifdown-ipv6 ifdown-sit ifup-aliases ifup-isdn ifup-routes ifup-wireless
ifdown ifdown-isdn ifdown-Team ifup-bnep ifup-plip ifup-sit init.ipv6-global
ifdown-bnep ifdown-post ifdown-TeamPort ifup-eth ifup-plusb ifup-Team network-functions
ifdown-eth ifdown-ppp ifdown-tunnel ifup-ippp ifup-post ifup-TeamPort network-functions-ipv6
[root@CentOS7 network-scripts]# vi ifcfg-ens0
[root@CentOS7 ~]# systemctl restart network
修改网卡
第一步:
cd /etc/sysconfig/network-scripts/
第二步:
[root@CentOS7 network-scripts]#vi /etc/default/grub
[root@CentOS7 network-scripts]#cat !*
cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"
[root@CentOS7 network-scripts]# grub2-mkconfig -o /etc/grub2.cfg
第三步:
[root@MySQL5 network-scripts]# vi ifcfg-ens33
[root@CentOS7 network-scripts]# mv ifcfg-ens33 ifcfg-eth0
[root@CentOS7 network-scripts]# ls
ifcfg-eth0 ifdown-isdn ifdown-tunnel ifup-isdn ifup-Team
[root@CentOS7 network-scripts]# cat ifcfg-ens0
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="yes"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="eth0"
UUID="975d30f4-d643-4890-ad9b-0e77f6189799"
DEVICE="eth0"
ONBOOT="yes"
IPADDR="192.168.111.6"
PREFIX="24"
GATEWAY="192.168.111.2"
NETWORK="255.255.255.0"
DNS1="192.168.111.2"
IPV6_PRIVACY="no"
HWADDR=00:0c:29:c4:35:36
添加要修改的网卡名称 (非必要!)
vi /usr/lib/udev/rules.d/60-net.rules
[root@MySQL5 ~]# cat !*
cat /usr/lib/udev/rules.d/60-net.rules
#ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", PROGRAM="/lib/udev/rename_device", RESULT=="?*", NAME="$result"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:88:20:02", ATTR{type}=="1", KERNEL=="eth*", NAME="ens0"
第四步:
reboot
centos9:
修改IP
[root@RockyLinux9 ~]#cd /etc/NetworkManager/system-connections/
[root@RockyLinux9 system-connections]#ls
ens160.nmconnection
修改配置文件
[root@RockyLinux9 system-connections]#vi ens160.nmconnection
[ipv4]
method=manual
address=192.168.111.4
gateway=192.168.111.2
dns=8.8.8.8
激活配置文件
[root@RockyLinux9 system-connections]#nmcli connection load /etc/NetworkManager/system-connections/ens160.nmconnection
[root@RockyLinux9 system-connections]#nmcli connection up /etc/NetworkManager/system-connections/ens160.nmconnection
改出问题了Failed to start LSB: Bring up/down
centos虚拟机Failed to start LSB: Bring up/down错误解决方法_centos failed to start lsb-CSDN博客
启动网卡报错(Failed to start LSB: Bring up/down networking )解决办法总结 - 錵開や落幕 - 博客园
局域网
标准:IEE802标准 将数据链路层分为逻辑链路层LLC子层和介质访问控制MAC子层
局域网主要关注两层数据链路层和物理层。
802.3是以太网局域网最核心的协议类型。
IEEE 802.3标准 载波侦听多路访问技术 CSMA/CD这种技术 早期局域网的一个标准协议叫做以太网协议。
通讯过程是多个主机之间进行通讯 如果发生了冲突比方说以前是总线型拓扑结构。
两个机器同时发发生冲突,只能稍等一会再发。发送数据发生冲突就会过一会再发。
这个时间是随机的,那如果又一样了就又冲突了。
当然每个计算机在发数据报文之前需要检查这个数据中,网络中是否又数据在传输。
这个就叫做载波侦听多路访问技术。只有10M的速度。
现在出了u z ab网络速度越来越快了ab可以达到上G的速度。
无线局域网标准
IEEE 802.11标准
WIFI6无线网卡,稳定性还是不行。移动设备无线可以,生产中设备都是有线的。
中国无线网络:WAPI
国产手机叫做WLAN 指的就是无线局域网的意思可以用WAPI可以用WIFI
国外手机都是WIFI没有WAPI
网络设备
路由器:root
交换机:switch
网线:同轴电缆有限电视,早期速度比较慢 10Base2 10兆速度基带传输
这里的宽带和基带和说的50宽带不是一个意思。50宽带说的是网速,基带指的是数字信号宽带指的是模拟信号,
10Base2和10Base5 2和5表示的是最大设备信号的传输距离,2指的200米实际上是185,两个网络设备相连不能超过185米,超过长度信号衰减,信号有传输的最大距离。
目前用到最多的是双绞线里面的线是成对的头是水晶头
光纤网卡
千兆网卡 1000 / 8 = 125M/B
光纤可以传几百米,有时候不是说把光缆给挖坏了吗?
参考文献
总结
所有命令都需要反复敲来实验来记忆,本人基本上是个人理解加参考其他大佬的肯定有很多问题欢迎指正,我会及时修改。