1.nmcli配置网络
四层网络模型:
1) 应用层 (HTTP pop3 smtp)
2) 传输层 (TCP/UDP)
3) 网络层 (ping icmp)
4) 链路层 (MAC)
# 显示设备状态和详细信息
[root@node01 ~]# nmcli dev status
DEVICE TYPE STATE CONNECTION
ens33 ethernet connected System ens33
lo loopback unmanaged --
# 显示所有连接的列表
[root@node01 ~]# nmcli conn show
NAME UUID TYPE DEVICE
System ens33 3aed3e3a-c357-4e68-812b-c8f233a70f86 ethernet ens33
# 仅列出活动的连接
[root@node01 ~]# nmcli conn show --active
NAME UUID TYPE DEVICE
System ens33 3aed3e3a-c357-4e68-812b-c8f233a70f86 ethernet ens33
网卡配置文件:
[root@node01 ~]# ls /etc/sysconfig/network-scripts/ifcfg-ens*
以gw网关为例: ens33动态 ens37静态
[root@c26-gw1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp" # dhcp
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33" # 一般与 ifcfg-xxx的名字相同
UUID="8ce651bc-3d2a-49f2-92a8-39095dd98752"
DEVICE="ens33" # 一般与 ifcfg-xxx的名字相同
ONBOOT="yes" # 必须为yes, 否则无法显示IP地址
[root@c26-gw1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens37
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" # 静态地址
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="no"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens37"
DEVICE="ens37"
ONBOOT="yes"
IPADDR=10.15.200.8
MASK=255.255.255.0 # 子网掩码
几个重要的参数:
BOOTPROTO="static"
ONBOOT="yes" # 启动时是否自动激活此网卡
IPADDR=10.15.200.8
MASK=255.255.255.0
与网络相关的配置文件:
[root@node01 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search example.cn # 默认域 dhcp下发 (与/etc/dhcp/dhcpd.conf中的定义有关)
nameserver 10.15.200.8 # 默认的 dns 服务器地址 (与/etc/dhcp/dhcpd.conf中的定义有关)
思考: /etc/resolv.conf
nameserver xx.xx.xx.xx # 可以有多行么
nameserver 10.15.200.8
nameserver 10.15.200.9
与主机名相关的命令与配置文件:
[root@node01 ~]# cat /etc/hostname
node01.example.cn
[root@node01 ~]# hostnamectl
Static hostname: node01.example.cn
Icon name: computer-vm
Chassis: vm
Machine ID: 7f68b601c9f34d9b9c63ac8ec2647a7a
Boot ID: affc5c95ebad44bda99d462e628ee3da
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-1127.el7.x86_64
Architecture: x86-64
[root@node01 ~]# hostnamectl set-hostname demox.example.cn
与解析相关的配置文件: /etc/hosts
[root@node01 ~]# cat /etc/hosts
127.0.0.1 localhost
10.15.200.101 node01.example.cn node01
10.15.200.102 node02.example.cn node02
10.15.200.103 node03.example.cn node03
ping一个域名的查找顺序:
1) /etc/hosts
2) /etc/resolv.conf
2.链路聚合
# 注意TYPE=类型 不是Ethernet
cat >/etc/sysconfig/network-scripts/ifcfg-bond0<<EOF
DEVICE=bond0
BOOTPROTO=static
ONBOOT=yes
NAME=bond0
TYPE=bond
IPADDR=10.15.200.102
NETMASK=255.255.255.0
GATEWAY=10.15.200.8
BONDING_OPTS="miimon=100 mode=1"
EOF
cat >/etc/sysconfig/network-scripts/ifcfg-ens33<<EOF
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
EOF
cat >/etc/sysconfig/network-scripts/ifcfg-ens37<<EOF
DEVICE=ens37
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
EOF
# mode=1 主备 0: 轮询 建议采取1模式 (即active-standby模式)
# 起一个别名 bond0 options: mode模式 miimon:多长时间检测一次链路状态
cat >/etc/modprobe.d/bond0.conf<<EOF
alias bond0 bonding
options bonding mode=1 miimon=100
EOF
[root@node03 ~]# modprobe bonding # 加载模块
[root@node03 ~]# lsmod | grep bond # 查看模块
bonding 152979 0
[root@node03 ~]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: None
MII Status: down
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
[root@node03 ~]# echo "bonding" >> /etc/modules-load.d/config.conf
# NetworkManager不停止会导致配置网卡绑定之后network服务启动失败
[root@node03 ~]# systemctl stop NetworkManager
[root@node03 ~]# systemctl disable NetworkManager
[root@node03 ~]# systemctl restart network.service
Bonding Mode: load balancing (round-robin)
TX packets 635263 bytes 38246745 (36.4 MiB)
TX packets 3944 bytes 238524 (232.9 KiB)
TX packets 801582 bytes 238262161 (227.2 MiB)