一、回顾
1、计算机网络基础,Linux网络属性配置
a、TCP/IP协议栈:物理层,互联网层,传输层,应用层
互联网层:IP
传输层:TCP,UDP
应用层:http,https,ftp,ldap,...
b、链接路层:以太网帧
c、互联网层:IP报文
d、以太网帧:最大传输单元是MTU,是1500个字节,因为我们以太网帧自己守护还要占据一些内容,比如源mac,目标mac等,因此留给IP报文的只有一千四百多个字节了。这就意味着我们每一个文件就要拆分成大小为一千多个字节的一个又一个报文来分别传送的。
2、Linux网络属性配置:命令,配置文件
二、Linux网络属性配置(2)
1、ifcfg命令家族:ifconfig,route,netstat
2、ifconfig命令:接口及地址查看和管理
a、ifconfig [INTERFACE]
查看具体某个网卡信息
[root@localhost ~]# ifconfig ens33
ifconfig -a:显示所有接口,包括非激活状态的
[root@localhost ~]# ifconfig -a
查看激活的网卡信息
[root@localhost ~]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.10.41 netmask 255.255.255.0 broadcast 192.168.10.255 inet6 fe80::2af8:1ecb:eb2c:861f prefixlen 64 scopeid 0x20<link> ether 00:0c:29:76:9f:f6 txqueuelen 1000 (Ethernet) RX packets 65 bytes 6650 (6.4 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 65 bytes 8258 (8.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 42 bytes 4554 (4.4 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 42 bytes 4554 (4.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500:此段表示网卡处于UP状态,也就是激活状态。BROADCAST表示支持广播功能,MULTICAST表示支持组播或多播功能。RUNNING表示处于运行中。mtu 1500表示网卡最大的传输单元不超过1500个字节。
inet 192.168.10.41 netmask 255.255.255.0 broadcast 192.168.10.255:此段表示网卡的IP地址,子网掩码,以及广播地址为192.168.10.255
inet6 fe80::2af8:1ecb:eb2c:861f prefixlen 64 scopeid 0x20<link>:此段表示IPV6及其相关信息
ether 00:0c:29:76:9f:f6 txqueuelen 1000 (Ethernet):此段表示网卡的mac地址为00:0c:29:76:9f:f6,txqueuelen表示传输队列长度为1000
RX packets 150 bytes 13566 (13.2 KiB):此段 RX packets表示网卡激活以后所接收到的报文的数量为150个,这些报文加起来总大小字节为13566,换算到K为单位为13.2KiB
RX errors 0 dropped 0 overruns 0 frame 0:此段表示接收时的错误(errors)个数为0个,丢包(dropped)数量为0个,溢出(overruns)为0个,帧为0个
TX packets 128 bytes 15084 (14.7 KiB):TX表示传出去的数据报文为128个,总计15084字节,大小为14.7KiB
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0:此处表示传出去的错误个数为0个,丢包数量为0个,搬运个数为0,冲突(collisions )的个数为0
b、ifconfig命令用法二
ifconfig interface [aftype] options | address ...
(1)、注意此种命令方式修改的配置信息会立即送往内核中的TCP/IP协议栈中并立即生效
(2)、ifconfig IFACE IP/MASK [up]
[root@localhost ~]# ifconfig ens37 192.168.10.51/24 up
(3)、ifconfig IFACE IP NETMASK
[root@localhost ~]# ifconfig ens37 192.168.10.61 netmask 255.255.255.0
(4)、options
[-] promisc:启用或关闭混杂模式功能,其它功能启用和关闭方式也一样
[root@localhost ~]# ifconfig ens37 promisc [root@localhost ~]# ifconfig ens37 ens37: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST> mtu 1500 inet 192.168.10.61 netmask 255.255.255.0 broadcast 192.168.10.255 ether 00:0c:29:76:9f:00 txqueuelen 1000 (Ethernet) RX packets 345 bytes 28427 (27.7 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 256 bytes 56574 (55.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 [root@localhost ~]# ifconfig ens37 -promisc [root@localhost ~]# ifconfig ens37 ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.10.61 netmask 255.255.255.0 broadcast 192.168.10.255 ether 00:0c:29:76:9f:00 txqueuelen 1000 (Ethernet) RX packets 369 bytes 30511 (29.7 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 273 bytes 58874 (57.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
(5)、管理IPV6地址
增加IPV6地址:ifconfig INTERFACE add addr/prefixlen(地址/掩码)
删除IPV6地址:ifconfig INTERFACE del addr/prefixlen
3、route命令:路由查看及管理
a、路由条目类型
主机路由:目标地址为单个IP;
网络路由:目标地址为IP网络
默认路由:目标为任意主机,0.0.0.0/0.0.0.0
b、如果加 -n参数会在相应的路由表中将对应的主机名解析为IP地址,如果不加-n参数则不会解析
c、查看
route -n :以数字格式来显示路由信息而不要反解地址和端口号
[root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.10.2 0.0.0.0 UG 100 0 0 ens33 192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 ens37 192.168.10.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
Destination:表示target,即目标网络
Genmask:表示掩码地址,即目标网络的掩码地址
Gateway:表示下一跳网关地址,0.0.0.0表示这是本地主机的网络地址,意思是我自己的主机就在网络上,因此不需要任何网关,即无需网关,也叫直连路由
Flags:表示路由条目的标志,U表示UP,表示启用状态,G表示Gateway,表示网关。网关不一定是默认网关,我们任何一个路由条目只要带有效下一跳地址的都可以认为是一个网关。只有目标网络是0.0.0.0的网关才叫默认网关。
Metric:表示度量值,表示到达这个网络我们中间要经过的开销
Iface:表示经过本地的哪一个接口
d、添加路由条目
route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
(1)、添加一个路由条目
[root@localhost ~]# route add -net 10.0.0.0/8 gw 192.168.10.2 dev ens33 [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.10.2 0.0.0.0 UG 100 0 0 ens33 10.0.0.0 192.168.10.2 255.0.0.0 UG 0 0 0 ens33 192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 ens37 192.168.10.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
上述命令也可写作
[root@localhost ~]# route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.10.2 dev ens33
表示的意思是,添加一个路由,想到达10.0.0.0掩码为8位的网络,要经过192.168.10.2这一个下一跳地址并且从网卡ens33出去。(默认可不指网卡,系统会自己判断,但是最好还是指定的好)
36:18