一、网卡命名
设备结构
o:主板上集成的设备的设备索引号
s:扩展槽的索引号
x:基于MAC地址的命名
ps:基于物理位置拓扑的命名。如enp2s1,表示PCI总线上第2个总线的第1个插槽的设备索引号
回归传统命名
修改网卡配置文件
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# mv ifcfg-ens33 ifcfg-eth0
[root@localhost network-scripts]# vim ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=eth0 //此处要把ens33改成eht0
UUID=03be31f5-a3c1-4f8d-88b3-aea6e85c869f
DEVICE=eth0 //此处要把ens33改成eth0
ONBOOT=yes
编辑/etc/default/grub配置文件,在以GRUB_CMDLINE_LINUX开头的行内rhgb的前面加上net.ifnames=0 biosdevname=0
[root@localhost ~]# vim /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="( s e d ′ s , r e l e a s e . ∗ (sed 's, release .*(sed
′
s,release.∗,g’ /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT=“console”
GRUB_CMDLINE_LINUX=“crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap net.ifnames=0 biosdevname=0 rhgb quiet”
GRUB_DISABLE_RECOVERY=“true”
为grub2生成其配置文件
[root@localhost ~]# grub2-mkconfig -o /etc/grub2.cfg
Generating grub configuration file …
Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-fd0bcf5782d24ba5b903b175c35f328e
Found initrd image: /boot/initramfs-0-rescue-fd0bcf5782d24ba5b903b175c35f328e.img
done
重启系统
[root@localhost ~]# reboot
二、网络管理常用命令
ifconfig:查看当前处于活动状态的所有网络接口
[root@localhost ~]# ifconfig
eth0: flags=4163
inet 172.16.12.128 netmask 255.255.255.0 broadcast 172.16.12.255
inet6 fe80::20c:29ff:fe73:110 prefixlen 64 scopeid 0x20
ether 00:0c:29:73:01:10 txqueuelen 1000 (Ethernet)
RX packets 5121 bytes 424364 (414.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3813 bytes 3257482 (3.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1 (Local Loopback)
RX packets 4 bytes 344 (344.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4 bytes 344 (344.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ifconfig -a 查看所有网卡状态信息, 包括禁用和启用
[root@localhost ~]# ifconfig -a
eth0: flags=4163
inet 172.16.12.128 netmask 255.255.255.0 broadcast 172.16.12.255
inet6 fe80::20c:29ff:fe73:110 prefixlen 64 scopeid 0x20
ether 00:0c:29:73:01:10 txqueuelen 1000 (Ethernet)
RX packets 5177 bytes 428948 (418.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3844 bytes 3262104 (3.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1 (Local Loopback)
RX packets 4 bytes 344 (344.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4 bytes 344 (344.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
网卡配置信息含义如下:
UP: 网卡处于活动状态
BROADCAST: 支持广播
RUNNING: 网线已接入
MULTICAST: 支持组播
MTU: 最大传输单元(字节),即此接口一次所能传输的最大封包
inet: 显示IPv4地址行
inet6: 显示IPv6地址行
link/enther: 指设备硬件(MAC)地址
txqueuelen: 传输缓存区长度大小
RX packets: 接收的数据包
vTX packets: 发送的数据包
errors: 总的收包的错误数量
dropped: 由于各种原因, 导致拷贝在内存过程中被丢弃
collisions: 网络信号冲突情况, 值不为0则可能存在网络故障
ip:
link:网络接口属性
addr:协议地址
route:路由
**
ip link show:查看网络接口所有地址
[root@localhost ~]# ip link show
1: lo:
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0:
link/ether 00:0c:29:73:01:10 brd ff:ff:ff:ff:ff:ff
ip -s link show:显示报文统计信息
[root@localhost ~]# ip -s link show
1: lo:
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
0 0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0
2: eth0:
link/ether 00:0c:29:73:01:10 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
23826 255 0 0 0 0
TX: bytes packets errors dropped carrier collsns
21275 157 0 0 0 0
ip link set DEV {up|down}:启用或禁用网络接口
[root@localhost ~]# ip link set lo down
[root@localhost ~]# ip link set lo up
ip addr add ADDRESS dev DEV:添加IP地址
1.先查看eth0网卡信息
[root@localhost ~]# ip addr show eth0
eth0:
UP qlen 1000
link/ether 00:0c:29:73:01:10 brd ff:ff:ff:ff:ff:ff
inet 172.16.12.128/24 brd 172.16.12.255 scope global dynamic eth0
valid_lft 1683sec preferred_lft 1683sec
inet6 fe80::20c:29ff:fe73:110/64 scope link
valid_lft forever preferred_lft forever
2.添加网段
[root@localhost ~]# ip addr add 192.168.1.1/24 dev eth0
3.查看
[root@localhost ~]# ip addr show eth0
eth0:
link/ether 00:0c:29:73:01:10 brd ff:ff:ff:ff:ff:ff
inet 172.16.12.128/24 brd 172.16.12.255 scope global dynamic eth0
valid_lft 1657sec preferred_lft 1657sec
inet 192.168.1.1/24 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe73:110/64 scope link
valid_lft forever preferred_lft forever
ip addr del ADDRESS dev DEV:删除IP地址
1.查看eth0网卡:
[root@localhost ~]# ip addr show eth0
eth0:
UP qlen 1000
link/ether 00:0c:29:73:01:10 brd ff:ff:ff:ff:ff:ff
inet 172.16.12.128/24 brd 172.16.12.255 scope global dynamic eth0
valid_lft 1603sec preferred_lft 1603sec
inet 192.168.1.1/24 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe73:110/64 scope link
valid_lft forever preferred_lft forever
2.删除IP地址:
[root@localhost ~]# ip addr del 192.168.1.1/24 dev eth0
[root@localhost ~]# ip addr show eth0
eth0:
link/ether 00:0c:29:73:01:10 brd ff:ff:ff:ff:ff:ff
inet 172.16.12.128/24 brd 172.16.12.255 scope global dynamic eth0
valid_lft 1580sec preferred_lft 1580sec
inet6 fe80::20c:29ff:fe73:110/64 scope link
valid_lft forever preferred_lft forever
route:
查看当前路由表:
[root@localhost ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default gateway 0.0.0.0 UG 100 0 0 ens33
172.16.12.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
增加网段路由:
[root@localhost ~]# route add -net 172.16.128.0/24 gw 172.16.12.2 dev eth1
[root@localhost ~]# route add -net 0.0.0.0/0 gw 172.16.12.2 dev eth1
增加主机路由:
[root@localhost ~]# route add -host 172.16.12.128 gw 172.16.12.2
删除路由:
[root@localhost ~]# route del -net 172.16.128.0/24
[root@localhost ~]# route del -net 0.0.0.0/0 gw 172.16.12.2
hostname与hostnamectl:
公有云: 地区-项目-业务-服务-节点-地址
wh-shop-register-nginx-node1-192.168.56.13
wh-med-pay-mysql-master01-192.168.56.11
wh-med-pay-mysql-slave01-192.168.56.11
hostname临时修改主机名:
[root@localhost ~]# hostname clq0917
修改主机名后需要重新登录用户才会显示效果
设定永久名称:
[root@localhost ~]# hostnamectl set-hostname clq0917
[root@localhost ~]# cat /etc/hostname
clq0917
查看主机信息:
[root@clq0917 ~]# hostnamectl
Static hostname: clq0917
Icon name: computer
Chassis: n/a
Machine ID: 1445ec8f1b5842fabc3388bbe149ccf3
Boot ID: f51b74810b51408881a3be0a39da4b7a
Virtualization: vmware
Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)
CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server
Kernel: Linux 3.10.0-123.el7.x86_64
Architecture: x86_64
三、网络相关配置文件
网络配置文件:
//网络配置文件:/etc/sysconfig/network
NETWORKING={yes|no}:设定整个系统是否启用网络功能,若设为no,则不论网卡如何设置都不能使用网络功能。
HOSTNAME:设置主机名
网络接口配置文件:
网络接口即网卡,其配置文件的路径是/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
BOOTPROTO=static
NAME=eth1
UUID=03be31f5-a3c1-4f8d-88b3-aea6e85c869f
DEVICE=eth1
ONBOOT=yes
IPADDR=172.16.12.130
NETMASK=255.255.255.0
GATEWAY=172.16.12.2
DNS1=172.16.12.2
网卡配置说明:
参数 说明
BOOTPROTO=none //引导协议,可选值有{static|none|dhcp|bootp}。如果要使用静态地址,使用static或none都可以
NM_CONTROLLED //NM是NetworkManager的简写,NM是由RHEL研发的在RHEL6中取代network脚本来实现网络管理、配置的服务脚本
//可选值有{ yes | no }
//此项是设定此网卡是否接受NM控制。CentOS6建议设为“no”
TYPE //接口类型。常见的接口类型有:Ethernet,Bridge
UUID //设备的惟一标识
HWADDR //硬件地址,要与硬件中的地址保持一致,可省
IPADDR=172.16.12.130 //固定IP地址
PREFIX=24 //子网掩码
NETMASK=255.255.255.0 //子网掩码
GATEWAY=172.16.12.2 //默认网关
DNS1=172.16.12.2 //第一个DNS服务器指向
DNS2 //第二个DNS服务器指向
DNS3 //第三个DNS服务器指向
DEVICE=eth1 //关联的设备名称,要与文件名的后半部"INTERFACE_NAME"保持一致
NAME=“eth1” //连接名称
ONBOOT=yes //在系统引导时是否自动激活此网络接口,可选值有{ yes | no }
DEFROUTE=yes //将接口设定为默认路由[yes/no]
USERCTL={yes/no} //是否允许普通用户控制此接口的启用与禁用
PEERDNS={yes/no} //是否在BOOTPROTO为dhcp时接受由dhcp服务器指定的DNS地址,此项设为yes时获得的DNS地址将直接覆盖至/etc/resolv.conf文件中
路由配置文件:
路由配置文件的路径是/etc/sysconfig/network-scripts/route-INTERFACE_NAME
//添加格式一:DEST via NEXTHOP
[root@localhost ~]# vi /etc/sysconfig/network-scripts/route-ens33
172.16.12.0/24 via 172.16.12.2
//添加格式二:
[root@clq0917 ~]# vi /etc/sysconfig/network-scripts/route-ens33
ADDRESS0=172.16.12.0
NETMASK0=255.255.255.0
GATEWAY0=172.16.12.2
DNS配置文件:
DNS配置文件的路径是/etc/resolv.conf
[root@clq0917 ~]# vi /etc/resolv.conf
nameserver DNS_IP_1
nameserver DNS_IP_2
nameserver DNS_IP_3
四、NetworkManager管理网络
NetworkManager来提供网络服务,这是一种动态管理网络配置的守护进程,能够让网络设备保持连接状态。
使用nmcli命令查看设备以及连接情况
1.查看设备状态
[root@clq0917 ~]# nmcli device
设备 类型 状态 CONNECTION
eno16777736 ethernet 连接的 eno16777736
lo loopback 未管理 –
2.查看指定设备的详细状态
[root@clq0917 ~]# nmcli device show eno16777736
GENERAL.设备: eno16777736
GENERAL.类型: ethernet
GENERAL.硬盘: 00:0C:29:0E:B2:9C
GENERAL.MTU: 1500
GENERAL.状态: 100 (连接的)
GENERAL.CONNECTION: eno16777736
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/0
WIRED-PROPERTIES.容器: 开
IP4.地址[1]: ip = 192.168.174.130/24, gw = 192.168.174.2
IP4.DNS[1]: 192.168.174.2
IP4.DOMAIN[1]: localdomain
IP6.地址[1]: ip = fe80::20c:29ff:fe0e:b29c/64, gw = ::
3.查看连接设备
[root@clq0917 ~]# nmcli connection
名称 UUID 类型 设备
eno16777736 fce2b2c3-1a21-4d04-a37e-aeb3d16b3b93 802-3-ethernet eno16777736
4.查看指定设备连接的详细情况
[root@localhost ~]# nmcli connection show eno16777736
connection.id: eno16777736
connection.uuid: fce2b2c3-1a21-4d04-a37e-aeb3d16b3b93
connection.interface-name: –
connection.type: 802-3-ethernet
connection.autoconnect: yes
connection.timestamp: 1605629656
connection.read-only: no
connection.permissions:
connection.zone: –
connection.master: –
connection.slave-type: –
connection.secondaries:
connection.gateway-ping-timeout: 0
802-3-ethernet.port: –
802-3-ethernet.speed: 0
802-3-ethernet.duplex: –
802-3-ethernet.auto-negotiate: yes
802-3-ethernet.mac-address: 00:0C:29:0E:B2:9C
802-3-ethernet.cloned-mac-address: –
802-3-ethernet.mac-address-blacklist:
802-3-ethernet.mtu: 自动
802-3-ethernet.s390-subchannels:
802-3-ethernet.s390-nettype: –
802-3-ethernet.s390-options:
ipv4.method: auto
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:
ipv4.routes:
ipv4.ignore-auto-routes: no
ipv4.ignore-auto-dns: no
ipv4.dhcp-client-id: –
ipv4.dhcp-send-hostname: yes
ipv4.dhcp-hostname: –
ipv4.never-default: no
ipv4.may-fail: yes
ipv6.method: auto
ipv6.dns:
ipv6.dns-search:
ipv6.addresses:
ipv6.routes:
ipv6.ignore-auto-routes: no
ipv6.ignore-auto-dns: no
ipv6.never-default: no
ipv6.may-fail: yes
ipv6.ip6-privacy: -1 (未知)
ipv6.dhcp-hostname: –
GENERAL.名称: eno16777736
GENERAL.UUID: fce2b2c3-1a21-4d04-a37e-aeb3d16b3b93
GENERAL.设备: eno16777736
GENERAL.状态: 已激活
GENERAL.默认: 是
GENERAL.DEFAULT6: 否
GENERAL.VPN: 否
GENERAL.ZONE: –
GENERAL.DBUS-PATH: /org/freedesktop/NetworkManager/ActiveConnection/0
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/Settings/0
GENERAL.SPEC 对象: –
GENERAL.MASTER-PATH: –
IP4.地址[1]: ip = 192.168.174.130/24, gw = 192.168.174.2
IP4.DNS[1]: 192.168.174.2
IP4.DOMAIN[1]: localdomain
DHCP4.OPTION[1]: requested_domain_search = 1
DHCP4.OPTION[2]: dhcp_message_type = 5
DHCP4.OPTION[3]: requested_time_offset = 1
DHCP4.OPTION[4]: requested_domain_name = 1
DHCP4.OPTION[5]: requested_rfc3442_classless_static_routes = 1
DHCP4.OPTION[6]: requested_broadcast_address = 1
DHCP4.OPTION[7]:
五、使用原生network管理网络
CentOS/RHEL的网络配置文件默认目录为 /etc/sysconfig/network-scripts
默认第一块物理网卡配置文件为ifcfg-eth0, 如果有第二块物理网卡, 配置文件则为ifcfg-eth1以此类推。 注意: 如果新增物理网卡没有配置文件,可选择复制系统默认的进行修改。
设置NetworkManger开机不启动, 同时停止NetworkManger服务
[root@localhost ~]# systemctl disable NetworkManager
[root@localhost ~]# systemctl stop NetworkManager
添加一块物理网卡, 然后新增网络连接配置文件
复制配置eth0配置文件为eth1
[root@localhost ~]# cp /etc/sysconfig/network-scripts/{ifcfg-eth0,ifcfg-eth1}
编辑网卡配置文件
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
BOOTPROTO=static
NAME=eth1
UUID=03be31f5-a3c1-4f8d-88b3-aea6e85c869f
DEVICE=eth1
NM_CONTROLLED=no
ONBOOT=yes
IPADDR=172.16.12.130
NETMASK=255.255.255.0
GATEWAY=172.16.12.2
DNS1=172.16.12.2
重启network网络服务加载网络并设置开机启动
[root@localhost ~]# systemctl restart network
[root@localhost ~]# systemctl enable network