首页 > 代码库 > 关于网络配置管理
关于网络配置管理
网络管理
配置ip经常要用到该配置文件,首先我们把路径定义为别名
两个经常用的命令:
[root@xiaomag ~]# cd /etc/sysconfig/network-scripts/
[root@xiaomag ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0"
然后进行编辑配置文件
[root@xiaomag ~]# vim .bashrc
alias cdnet="cd /etc/sysconfig/network-scripts/"
alias editnet="vim /etc/sysconfig/network-scripts/ifcfg-eth0"
wq存盘退出
加载配置文件生效
[root@xiaomag ~]# . .bashrc
改完配置文件需要重启网络服务生效
[root@xiaomag ~]# service network restart
状态
[root@xiaomag ~]# service NetworkManager status
停止服务
[root@xiaomag ~]# service NetworkManager stop
设置服务为下次开机不启动
[root@xiaomag ~]# chkconfig NetworkManager off
看一下相对应的功能
[root@xiaomag ~]# editnet(注意这是别名)
DEVICE=eth0 (此配置文件所关联到的网卡名称)
BOOTPRROTO=yes (yes自动获取ip none禁止自动获取ip)
HWADDR=00:0C:29:D4:96:B6 (网卡的MAC地址,此地址应该与 网卡设备ROM中固定的地址保持一致)
TYPE=Ethernet (设备的诶型,通常有Ethernet,Bridge)
UUID=ec6ee114-7f60-4e7e-a1fe-9f6bfcb884c3 (网卡设备的唯一识别码)
ONBOOT=yes (此设备是否跟随OS启动而激活)
IPADDR=10.1.1.65 (此接口的IP地址,手动指定的 ,当然自动获取的是另一个选项)
NETMASK=255.255.255.0 (子网掩码)
PREFIX=16 (子网掩码 同上)
GATEWAT=10.1.1.254 (网关)
DNS1=8.8.8.8 (DNS服务器指向的主DNS服务器)
DNS2=114.114.114.114 (备用DNS服务器地址)
DNS3=8.8.4.4 (第三个备用DNS服务器地址)
PEERDNS=yes (当BOOTPROTO的值为dhcp‘自动获取动态IP’时,
是否允许dhcp服务器提供的dns服务指向覆盖本地手动配置的DNS服务器指向Yes自动IP覆盖no不允许)
配置文件后重启网络服务
[root@xiaomag ~]# service NetworkManager start
设置网络参数... [确定]
正在启动 NetworkManager 守护进程: [确定]
手动配置一个简单粗暴的IP
[root@xiaomag ~]# editnet (注意这个是配置文件的别名)
DEVICE=eth0 (此配置文件所关联到的网卡名称)
BOOTPROTO=dhcp (自动获取IP)
然后重启系统生效 reboot
==============================================================================
实现一个网卡绑定多个IP
对虚拟主机有用
将多个IP地址绑定到一个网卡上
为每个设备别名生成独立的接口配置文件
必选先关闭NetworkManager服务
别名格式: ifcfg-ethx:xxx
必须使用静态联网
网卡别名
[root@xiaomag ~]# cdnet
[root@xiaomag network-scripts]# cp ifcfg-eth0 ifcfg-eth0:1
[root@xiaomag network-scripts]# cp ifcfg-eth0 ifcfg-eth0:2
编辑定义别名网卡接口etho:1
[root@xiaomag network-scripts]# vim ifcfg-eth0:1
DEVICE=eth0:1 注意NAME要改
IPADDR=10.1.65.1 IP要改
PREFIX=16 掩码
GATEWAY=10.1.1.254 网关
DNS1=8.8.8.8 DNS
编辑定义别名网卡接口etho:2
[root@xiaomag network-scripts]# vim ifcfg-eth0:2
DEVICE=eth0:2 注意NAME要改
IPADDR=10.1.65.2 IP要改
PREFIX=16 掩码
GATEWAY=10.1.1.254 网关
DNS1=8.8.8.8 DNS
编辑过后重启服务
[root@xiaomag network-scripts]# service network restar
[root@xiaomag network-scripts]# ifconfig
查看IP 这时候原先的IP可以用,cp的这两个IP也可以 就是三个可用IP
下面实现一下既可以自动获取IP又可以使用静态IP
[root@xiaomag network-scripts]# vim ifcfg-eth0 编辑主配置文件
DEVICE=eth0
BOOTPROTO=dhcp 加上自动获取IP 上面添加的IP还可以使用
[root@xiaomag network-scripts]# service network restart 重启服务
这时候已经是两个静态IP一个自动获取的IP
==============================================================================
下面看多网卡绑定一个IP
网络接口配置bonding
就是将多块网卡绑定同一个IP地址对外提供服务,可以实现高可用或者负载均衡。
当然,直接给两块网卡设置同一个IP地址是不可能的,通过bonding,虚拟一块网卡对外提供连接,
物理网卡的被修改为相同的MAC地址
虚拟机添加一块网卡,让后看ifconfig -a 查看所有网卡接口包括不活动的刚添加上的
创建bonding设备的配置文件
[root@xiaomag network-scripts]# vim ifcfg-bond0
DEVIER=bond0
IPADDR=10.1.65.66
PREFIX=16
GATEWAY=10.1.0.1
DNS1=8.8.8.8
BONDING_OPTS="miimon=100 mode=1"
编辑网卡eth0
[root@xiaomag network-scripts]# vim ifcfg-eth0
DEVICE=eth0
SLAVE=yes 物理网卡eth0是奴隶
MASTER=bond0 bond0是主人, 提供给当前配置文件信息
cp eth0文件 到新文件eth1
[root@xiaomag network-scripts]# cp ifcfg-eth0 ifcfg-eth1
[root@xiaomag network-scripts]# vim ifcfg-eth1 编辑eth1
DEVICE=eth1 name一定要改,刚才复制过来的,是0 要改成别的
SLAVE=yes
MASTER=bond0
配置完成后 查看内容是否正确
[root@xiaomag network-scripts]# cat ifcfg-eth*
DEVICE=eth0
SLAVE=yes
MASTER=bond0
DEVICE=eth1
SLAVE=yes
MASTER=bond0
[root@xiaomag network-scripts]# cat ifcfg-bond0
DEVICE=bond0
IPADDR=10.1.65.65
PREFIX=16
GATEWAY=10.1.0.1
DNS1=8.8.8.8
BONDING_OPTS="miimon=100 mode=1"
接下来重启服务生效
[root@xiaomag network-scripts]# service network restart
[root@xiaomag network-scripts]# ifconfig
MAC地址一样
当前的主网卡是eth0
如果eth0断网,另外一个eth1开始接替运行
CentOS 7 网络配置
ONBOOT:在系统引导时是否激活此设备
TYPE:接口类型;常见有的Ethernet, Bridge
UUID:设备的惟一标识
IPADDR:指明IP地址
NETMASK:子网掩码
GATEWAY: 默认网关
DNS1:第一个DNS服务器指向
DNS2:第二个DNS服务器指向
USERCTL:普通用户是否可控制此设备
PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中
为了实验环境方便,把网卡名改了因为太长,不是很方便,建议工作环境不要修改
使用传统命名方式:
1 编辑/etc/default/grub配置文件
GRUB_CMDLINE_LINUX="rhgb quiet net.ifnames=0"
[root@Compro ~]# vim /etc/default/grub
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quieti net.ifnames=0"
为grub2生成其配置文件
grub2-mkconfig -o /etc/grub2.cfg 软连接
[root@Compro ~]# grub2-mkconfig -o /boot/grub2/grub.cfg 真实路径
2 修改/boot/grub2/grub.cfg 这是软连接 不建议使用可以使用上面的
[root@Compro ~]# vim /boot/grub2/grub.cfg 修改配置文件 搜索关键字:linux16 匹配到的第一个字符的字段尾部追加net.ifnames=0
linux16 /vmlinuz-3.10.0-327.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=zh_CN.UTF-8 net.ifnames=0
3 然后 reboot 重启系统
ifconfig 查看 这时候网卡名称已经更改为eth0;1
但是网卡配置文件里面的文件名称还是没更变
移动原来的文件到新文件并且命名为eth0
[root@Compro network-scripts]# mv ifcfg-eno16777736 ifcfg-eth0
修改移动过来的配置文件内容
[root@Compro network-scripts]# vim ifcfg-eth0
DEVICE="eth0" 原来的设备名是长格式的,修改成功后的是eth0
双网卡的只有一个配置文件, eth1的配置文件需要创建
[root@Compro network-scripts]# cp ifcfg-eth0 ifcfg-eth1
[root@Compro network-scripts]# vim ifcfg-eth1
DEVICE="eth1" 修改设备名eht1
[root@Compro ~]# systemctl restart network 重启服务
配置Linux网络属性:ip命令
查看网卡设备
ip link
set设置 eht1 down禁止
[root@Compro ~]# ip link set eth1 down 或者使用 ifconfig eth1 down
set设置 eht1 up启用
[root@Compro ~]# ip link set eth1 up 或者使用 ifconfig eth1 uo
网卡别名 临时更改 重启就失效
命令行界面
[root@Compro ~]# ifconfig eth1 10.1.0.1/24
[root@Compro ~]# ifconfig eth1:100 10.1.0.2/24
ip命令:
ip addr add 172.16.1.2/16 dev eth0
ip addr add 172.16.1.1/16 dev eth0 label eth0:0
ip addr add 172.16.1.2/16 dev eth0 label eth0:0
ip addr del 172.16.1.1/16 dev eth0 label eth0:0
ip addr flush dev eth0 label eth0:0
地址配置工具:nmcli
[root@Compro ~]# nmcli connection show 显示说有包括不活动链接
[root@Compro ~]# nmcli connection show --active 只显示活动的链接
[root@Compro ~]# nmcli device show {eth0 name} 显示网络接口属性
[root@Compro ~]# systemctlrestart network 重启服务
[root@Compro ~]# nmcli con reload 生效配置文件
[root@Compro ~]# nmcli connection add con-name home type ethernet ifname eth1 autoconnect yes ip4 10.1.100.100/24 gw4 10.1.0.1
con-name home:名称 type ethernet:类型 ifname eth1 :网卡名 autoconnect yes: 开机是否启动 ip4 10.1.100.100/24 gw4 10.1.0.1 配置地址 /24掩码 网关
[root@Compro ~]# nmcli connection up home 接口启用
[root@Compro ~]# nmcli con del home 删除连接
修改连接设置
[root@Compro ~]# nmcli con mod static connection.autoconnectno
[root@Compro ~]# nmcli con mod static ipv4.dns 172.25.X.254
[root@Compro ~]# nmcli con mod static +ipv4.dns 8.8.8.8
[root@Compro ~]# nmcli con mod static -ipv4.dns 8.8.8.8
[root@Compro ~]# nmcli con mod static ipv4.addresses “172.25.X.10/24 172.25.X.254”
[root@Compro ~]# nmcli con mod static +ipv4.addresses 10.10.10.10/24
对应关系
nmclicon mod ifcfg-* 文件
ipv4.method manual BOOTPROTO=none
ipv4.method auto BOOTPROTO=dhcp
ipv4.addresses “192.0.2.1/24 IPADDR0=192.0.2.1
192.0.2.254” PREFIX0=24
GATEWAY0=192.0.2.254
ipv4.dns 8.8.8.8 DNS0=8.8.8.8
ipv4.dns-search example.com DOMAIN=example.com
ipv4.ignore-auto-dns true PEERDNS=no
connection.autoconnectyes ONBOOT=yes
connection.id eth0 NAME=eth0
connection.interface-name eth0 DEVICE=eth0
802-3-ethernet.mac-address . . . HWADDR= . . .
设备配置被保存在文本文件中
/etc/sysconfig/network-scripts/ifcfg-<name>
动态配置 静态配置
DEVICE=ethX DEVICE=ethX
HWADDR=0:02:8A:A6:30:45 HWADDR=0:02:8A:A6:30:45
BOOTPROTO=dhcp IPADDR=192.168.0.123
ONBOOT=yes NETMASK=255.255.255.0
Type=Ethernet GATEWAY=192.168.0.254
ONBOOT=yes
Type=Ethernet
修改连接配置后,需要重新加载配置
nmcli con reload
nmcli con down “system eth0” 可被自动激活
nmcli con up “system eth0”
nmcli dev dis eth0 禁用网卡,访止被自动激活
网络组Network Teaming
网络组:是将多个网卡聚合在一起的方法,从而实现冗错和提高吞吐量
网络组不同于旧版中bonding技术,提供更好的性能和扩展性
网络组由内核驱动和teamd守护进程实现
多种方式runner
启动网络组接口不会自动启动网络组中的port接口
启动网络组接口中的port接口不会自动启动网络组接口
禁用网络组接口会自动禁用网络组中的port接口
没有port接口的网络组接口可以启动静态IP连接
启用DHCP连接时,没有port接口的网络组会等待port接口的加入
创建网络组接口
[root@Compro ~]# nmcli connection add con-name team0 type team ifname team0 config ‘{"runner":{"name":"activebackup"}}‘
[root@Compro ~]# nmcli connection modify team0 ipv4.addresses 10.1.7.65/16
[root@Compro ~]# nmcli connection modify team0 ipv4.method manual
[root@Compro ~]# nmcli connection modify team0 ipv4.dns 8.8.8.8 ipv4.gateway 10.1.0.1
[root@Compro ~]# nmcli connection add con-name tem0-eth0 type team-slave ifname eth0 master team0
[root@Compro ~]# nmcli connection add con-name tem0-eth1 type team-slave ifname eth1 master team0
[root@Compro ~]# nmcli connection up team0
[root@Compro ~]# nmcli connection up team0-eth0
[root@Compro ~]# nmcli connection up team0-eth1
本文出自 “小马哥Linux系统运维” 博客,转载请与作者联系!
关于网络配置管理