首页 > 代码库 > 关于网络配置管理

关于网络配置管理

                                                              网络管理


配置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系统运维” 博客,转载请与作者联系!

关于网络配置管理