CentOS8.2基础配置
系统服务配置
现在活动的服务列表
systemctl -t service
所有服务清单
systemctl list-unit-files -t service
[root@lianglab ~]# systemctl list-unit-files -t service
UNIT FILE STATE
accounts-daemon.service enabled
alsa-restore.service static
alsa-state.service static
anaconda-direct.service static
anaconda-nm-config.service static
anaconda-noshell.service static
anaconda-pre.service static
anaconda-shell@.service static
anaconda-sshd.service static
anaconda-tmux@.service static
anaconda.service static
arp-ethers.service disabled
atd.service enabled
auditd.service enabled
auth-rpcgss-module.service static
autovt@.service enabled
avahi-daemon.service enabled
blivet.service static
blk-availability.service disabled
bluetooth.service enabled
bolt.service static
brltty.service disabled
btattach-bcm@.service static
canberra-system-bootup.service disabled
canberra-system-shutdown-reboot.service disabled
canberra-system-shutdown.service disabled
chrony-dnssrv@.service static
chrony-wait.service disabled
chronyd.service disabled
clean-mount-point@.service static
cockpit-motd.service static
cockpit-wsinstance-http-redirect.service static
cockpit-wsinstance-http.service static
网络配置 nmcli命令讲解
命令 | 目的 |
---|---|
nmcli dev status | 显示所有网络接口的网络管理器状态 |
nmcli con show | 列出所有连接 |
nmcli con show *name* | 列出连接名称的当前设置 |
nmcli con add con-name *name* .. | 添加一个名为name的新连接 |
nmcli con mod *name* .. | 修改连接名称 |
nmcli con reload | 告诉networkManager重新读取配置文件(在手工编辑之后有用) |
nmcli con up *name* | 激活连接名称 |
nmcli dev dis *dev* | 停用并断开网络接口开发人员上的当前连接 |
nmcli con del *name* | 删除连接名称及其配置文件 |
1.检查NetworkManager是否正在运行
您可以使用以下命令检查NetworkManager是否正在运行
[root@cobbler-p-010200064008 ~]# nmcli -t -f RUNNING general
running
2.列出所有可用的设备
查看和列出Linux系统上所有可用的设备
[root@cobbler-p-010200064008 ~]# nmcli dev status
DEVICE TYPE STATE CONNECTION
br0 bridge connected Bridge br0
virbr0 bridge connected virbr0
bond0 bond connected bond0
eno49 ethernet connected System eno49
eno50 ethernet connected System eno50
vnet0 tun connected vnet0
ens2f0 ethernet disconnected --
ens2f1 ethernet disconnected --
lo loopback unmanaged --
virbr0-nic tun unmanaged --
3.列出所有可用的连接
[root@cobbler-p-010200064008 ~]# nmcli con show
NAME UUID TYPE DEVICE
Bridge br0 d2d68553-f97e-7549-7a26-b34a26f29318 bridge br0
virbr0 19ec752e-976f-4c23-b236-deb684b9db07 bridge virbr0
bond0 ad33d8b0-1f7b-cab9-9447-ba07f855b143 bond bond0
System eno49 31fc52de-447b-46f6-33cf-1d4dbbcddef5 ethernet eno49
System eno50 12e7087a-5ced-5405-d350-7726d3570bae ethernet eno50
vnet0 149dcea1-7c1f-439b-b4eb-b2f0ca31f0b4 tun vnet0
ens2f0 98e575e9-2fcc-428f-bc02-1663f81402b9 ethernet --
ens2f1 daa451f8-b227-4d91-95e4-48c8e46d002d ethernet --
4.列出接口的所有配置
[root@cobbler-p-010200064008 ~]# nmcli con show "System eno49"
connection.id: System eno49
connection.uuid: 31fc52de-447b-46f6-33cf-1d4dbbcddef5
connection.stable-id: --
connection.type: 802-3-ethernet
connection.interface-name: eno49
connection.autoconnect: yes
connection.autoconnect-priority: 0
connection.autoconnect-retries: -1 (default)
connection.multi-connect: 0 (default)
connection.auth-retries: -1
connection.timestamp: 1606981056
connection.read-only: no
connection.permissions: --
connection.zone: --
connection.master: bond0
connection.slave-type: bond
connection.autoconnect-slaves: -1 (default)
connection.secondaries: --
connection.gateway-ping-timeout: 0
connection.metered: unknown
connection.lldp: default
connection.mdns: -1 (default)
connection.llmnr: -1 (default)
5.检查物理网络设备状态
[root@cobbler-p-010200064008 ~]# nmcli dev status
DEVICE TYPE STATE CONNECTION
br0 bridge connected Bridge br0
virbr0 bridge connected virbr0
bond0 bond connected bond0
eno49 ethernet connected System eno49
eno50 ethernet connected System eno50
vnet0 tun connected vnet0
ens2f0 ethernet disconnected --
ens2f1 ethernet disconnected --
lo loopback unmanaged --
virbr0-nic tun unmanaged --
6.创建一个新的以太网连接并分配静态IP地址
在此示例中 nmcli
,使用IPv4地址和网络前缀 192.168.6.66/24
以及默认网关静态配置 eth2
接口 192.168.6.1
,但仍会在
启动时自动连接并将其配置保存到 /etc/sysconfig/network-scripts/ifcfg-ens2f0
文件中。
nmcli con add con-name ens2f0 type ethernet ifname ens2f0 ipv4.method manual ipv4.address 192.168.6.66/24 ipv4.gateway 192.168.6.1 ---执行要谨慎
连接'ens2f0'(460b16aa-e755-403e-b0ec-5e1560dcc441)已成功添加。
7.创建一个新的以太网连接并分配DHCP IP地址
以下命令将为接口 eth2
添加一个新连接,该连接将使用 DHCP
获取 IPv4
网络信息,并在启动时自动连接。配置将被
保存,/etc/sysconfig/network-scripts/ifcfg-ens2f0
因为 con-name ens2f0
nmcli con add con-name ens2f0 type ethernet ifname ens2f0 ipv4.method auto
连接'ens2f0'(d75cb87f-cd15-40a2-9c33-138e69a06a1f)已成功添加。
我们可以在映射的接口配置文件中验证相同
egrep BOOTPROTO /etc/sysconfig/network-scripts/ifcfg-ens2f0
BOOTPROTO = DHCP
8.nmcli创建bond mode 4
查看网卡信息
nmtui connection show
nmcli device
为bond0添加网卡配置文件
nmcli connection add con-name bond4 ifname bond4 type bond mode 4
这里默认为dhcp获取ip的方式,手动修改配置文件为静态ip, 配置参考(模式)
vim /etc/sysconfig/network-scripts/ifcfg-bond0
启用连接bond0
nmcli connection up bond0
添加slava网卡
我们创建的是一个bond设备配置文件,那么就需要slave网卡来支撑,下面我们添加两个slave网卡:
nmcli connection add type bond-slave ifname enp1s0 master bond0
nmcli connection add type bond-slave ifname enp6s0 master bond0
查看slave网卡配置
cat /etc/sysconfig/network-scripts/ifcfg-bond-slave-enp1s0
cat /etc/sysconfig/network-scripts/ifcfg-bond-slave-enp6s0
启用slave网卡
nmcli connection up bond-slave-enp1s0
nmcli connection up bond-slave-enp6s0
重启网络
systemctl restart network
bond mode模式
balance-rr (0) –轮询模式,负载均衡(bond默认的模式)
active-backup (1) –主备模式(常用)
balance-xor (2)
broadcast (3)
802.3ad (4) –动态聚合模式(LACP)
balance-tlb (5)
balance-alb (6)
查看聚合状态
cat /proc/net/bonding/bond0
删除网卡绑定
nmcli connection show
nmcli connection delete bond-bond0
nmcli connection delete bond-slave-enp1s0
nmcli connection delete bond-slave-enp6s0
网络配置 IP 命令讲解
1.使用ip命令显示所有可用接口的IP地址
使用ip addr show显示你的Linux系统上的所有可用网络接口的IP地址
ip addr show
2.显示单个接口的IP地址
ip addr show dev bond0
3.根据接口类型列出接口
Linux系统上可以使用各种类型的NIC,例如vlan,bond,bridge,vxlan等。
ip addr show type bond
4.检查网卡的链接状态是启用还是禁用
ip link
将管理和显示所有网络接口的状态。显示所有接口的当前状态
检查单个接口的链接状态
ip link show dev em1
5.更改NIC的链接状态
ip link set em2 down
ip link show dev em2
ip link set em2 up
ip link show dev em2
ip link up 与 ifup 区别
ip link set ifname command
将网络接口设置为 IFF_UP
状态,并从内核范围启用它。这与 ifup ifname
初始化脚本命令或设备的 NetworkManager
激活状态不同。实际上,即使当前断开连接,NetworkManager也会始终设置接口。
虽然都说指令 ip link set eth0 up
和指令 ifup eth0
的作用是一样的,但是通过实践表明两者还是有区别的。ip link set eth0 up
仅仅启用网卡,但是不会配置路由;而 ifup
指令不仅启用网卡,同时会配置默认路由。
6.分配/添加IPv4和IPv6地址
要使用分配IPV4地址,可以使用 ip addr add
。为了演示此步骤,我已经从enp0s9接口临时取消分配/删除了IP地址。
ip addr add 192.168.56.101/24 dev em2
要使用ip命令分配IPv4地址,您将需要netmask前缀值 24
。
检查为em2接口分配的IPv4地址
ip addr show em2
要使用ip命令分配IPv6地址,您可以使用与IPv4地址相同的命令,但要使用IPv6地址和 netmask
ip addr add 2001:0001:0001:1443::0411/122 dev em2
ip addr show em2
7.取消分配/删除IPv4和IPv6地址
您可以使用 ip addr del
参数从接口取消分配或删除分配的IP地址。在这里,您必须提供确切的IP地址以及前缀值才能取消分配IP地址。
ip add del 192.168.56.101/24 dev em2
ip addr show em2
您可以使用与上述IPv4地址相同的命令取消分配或删除单个接口的IPv6地址。
ip addr del 2001:0001:0001:1443::0411/122 dev em2
ip addr show em2
8.从各个接口取消分配/删除所有协议地址
通过使用 ip addr del
,我们仅删除分配给相应接口的提供的地址。但是,如果要删除分配给单个接口的所有协议地址,则必须使用 flush
ip addr flush dev em2
9.显示界面的详细统计信息
[root@centos ~]# ip -s link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:a4:32:6f brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
366524753 2037501 0 0 0 0
TX: bytes packets errors dropped carrier collsns
774696153 2110977 0 0 0 0
如果该"-s"选项出现两次或更多次,则信息量会增加。
[root@centos ~]# ip -s -s link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:a4:32:6f brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
366558954 2037915 0 0 0 0
RX errors: length crc frame fifo missed
0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
774846442 2111393 0 0 0 0
TX errors: aborted fifo window heartbeat transns
0 0 0 0 2
10.列出路由
[root@kvm-d-006188 ~]# ip route list
default via 192.168.6.1 dev br0 proto static metric 425
192.168.6.0/24 dev br0 proto kernel scope link src 192.168.6.188 metric 425
11.将默认路由添加到路由表
ip route add default via 192.168.0.1 dev em2
ip route list
default via 192.168.0.1 dev enp0s8
default via 192.168.6.1 dev br0 proto static metric 425
192.168.6.0/24 dev br0 proto kernel scope link src 192.168.6.188 metric 425
与其他路由一样,为默认路由添加更多详细信息
ip route add default via 192.168.0.1 dev em2 proto static metric 101
使用ip命令再次验证默认路由
ip route list
default via 192.168.0.1 dev em2 proto static metric 101
12.从路由表中删除默认路由
ip route delete default via 10.0.2.2
您也可以使用接口名称删除默认路由,以删除映射到提供的接口的所有默认路由
ip route delete default dev em2
13.将其他路由添加到路由表
现在,在添加默认路由之后,您还可以将其他路由添加到路由表中。在这里,我们将通过路由192.168.0.1添加到192.168.168.0/24的路由
ip route add 192.168.168.0/24 via 192.168.0.1 dev em2
14.从路由表中删除其他路由
ip route delete 192.168.168.0/24 via 192.168.0.1
15.替换路由表中的现有路由
ip route replace 192.168.168.0/24 via 10.0.2.2 dev em2
16.显示地址将要走的路由
获取 192.168.168.10 地址匹配的路由
ip route get 192.168.168.10
Metric 优先级配置
Metric的值越小,优先级越高
如果两块网卡的Metric的值相同,就会出现抢占优先级继而网卡冲突,将会有一块网卡无法连接
修改Metric的值
修改网卡配置文件,如果没有就加上IPV4_ROUTE_METRIC参数
我这里配置的是eth0的优先级高
修改完配置文件后需要重启网络服务才能生效
重启网络服务,配置的临时路由信息会失效
systemctl restart network
Linux下配置永久路由的几种方式
1.在/etc/rc.local里添加路由信息
route add -net 192.168.1.0/24 dev eth0
# 或者
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1
2.在/etc/sysconfig/network里追加
GATEWAY=[网关IP或者网关网卡名称]
3./etc/sysconfig/static-routes
any net 192.168.1.0/24 gw 192.168.1.1
# 或者
any net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1