RHEL系列发行版的网卡配置可分为tui(curses-based text user interface(文本用户界面)、命令行配置和配置文件配置。
命令行模式下的网卡配置会立即生效,但只是当前有效,网络服务重启或是系统重启,之前的所有配置都会失效;而配置文件以及tui下的配置都会永久保存,但都不会立即生效,需要重启网络服务才能生效。
网卡获取IP地址的方式也分为两种:静态指定和动态获取(DHCP)
下面将逐一演示各种网卡配置方法:
1、tui (Curses-bases text user interface)
CentOS6和CentoS7的tui略有不同,CentOS6为setup命令启动,而CentOS7上则是nmtui命令来启动。
操作如下:
注:启动tui界面,需要使用可以支持tui界面的终端或终端工具:本地物理终端或是xshell,而且配置网卡服务的用户必须具有管理员权限,即root用户。
a、在命令行键入setup命令:
b、如下图,轻松完成以下配置:
配置完相应的ip以及DNS后,在命令行键入
[root@www ~]# service network restart ##CentOS6网络服务重启命令
[root@centos7-51 ~]# systemctl restart network ##CentOS7网络服务重启命令
网络服务重启后,新配置的ip地址便可以生效使用了。
CentOS6和CentOS7的tui启动命令虽然不同,但配置界面很相似。按照界面提示一步一步进行配置保存即可。
2、配置文件
这里需要说一下的是,CentOS6上面网卡的命名一般为:eth开头,后面跟上网卡的编号,
例如,第一块网卡名为eth0,第二块网卡名为eth1等等,Dell服务器对网卡的命名可能为em开头,后面跟编号,网卡名为em0,em1等等。
CentOS7上面的网卡一般名为eno开头,后面跟上一串数字,例如我的网卡
网卡的配置文件在/etc/sysconfig/network-scripts目录下,以ifcfg-开头
例如我CentOS6上的网卡名为eth0,则我的网卡配置文件的便是:/etc/sysconfig/network-scripts/ifcfg-eth0 ,下面我编辑一下这个文件,说明一下文件里面的各项参数的含义:
命令行键入:
[root@www ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" ##*设备名,必须和文件名与网卡名称一致 BOOTPROTO="static" ##*启动协议,若手工指定静态IP则为 static或者none,若动态获取则为 dhcp HWADDR="00:0C:29:7F:EA:07" ##*网卡的mac地址,必须和eth0网卡的mac地址一致 NM_CONTROLLED="no" ##是否使用NetworkManager管理此网卡,no代表不启用,yes代表启用 ONBOOT="yes" ##*系统引导时是否激活此设备 TYPE="Ethernet" ##*网卡类型,默认即可 UUID="1fdab342-8c92-432b-854d-39b2f37fabc1" ##网卡的UUID,设备的唯一标识符 DNS1=##第一个DNS服务器指向;若此处没有此项,需在/etc/resolve.conf中指定dns服务器ip地址 IPADDR="172.16.113.14" ##指定IP地址 NETMASK="255.255.0.0" ##指定子网掩码 GATEWAY="172.16.0.1" ##指定默认网关
编辑完此配置文件,按一下Esc键,再输入:wq便可保存退出此文件。
打*的为必选项。若BOOTPROTO为dhcp,则IPADDR、NETMASK、GATEWAY可不写
例如我CentOS7上的网卡名为eno16777736,则我的网卡配置文件便是:
/etc/sysconfig/network-scripts/ifcfg-eno16777736,下面我们编辑此文件,说明一下各项参数的含义:
命令行输入
[root@centos7-51 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 TYPE=Ethernet ##网络类型 BOOTPROTO=dhcp ##启动协议,若手工指定静态IP则为 static或者none,若动态获取则为 dhcp DEFROUTE=yes UUID=fa2124e6-07d9-4d0f-bb3d-230627b48aa7 DEVICE=eno16777736 ##设备名称 ONBOOT=yes ##*系统引导时是否激活此设备 DNS1=##第一个DNS服务器指向;若此处没有此项,需在/etc/resolve.conf中指定dns服务器ip地址 IPADDR="172.16.113.14" ##指定IP地址 NETMASK="255.255.0.0" ##指定子网掩码 GATEWAY="172.16.0.1" ##指定默认网关
编辑完此配置文件,按一下Esc键,再输入:wq便可保存退出此文件。
路由相关的配置文件:
/etc/sysconfig/network-scripts/route-IFACE ##和网卡配置文件名称尾部相同
路由的配置文件格式有两种分格,如下:
1、target via GW
例如:192.168.0.0/24 via 172.16.0.1
2、每三行定义一条路由信息
ADDRESS#=TARGET “#”换成数字
NETMASK#= “#”换成数字
GATEWAY#= “#”换成数字
编辑完成网卡的配置文件,重启网络服务或是重启系统,IP地址便可生效使用。
DNS指向配置文件为:/etc/resolv.conf
文件格式为: nameserver 192.168.0.1
DNS服务器可有三个,即在此文件中键入三次上述格式内容即可。
3、命令行模式,即时生效,重启失效。
网络接口的配置命令有三大类:
a、ifconfig
b、ip
c、nmcli (CentOS7)
a、ifconfig命令的使用
ifconfig -a | --all 显示所有接口的配置信息,默认ifconfig 不加任何选项即为ifconfig -a
[root@www ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:7F:EA:07 inet addr:192.168.0.54 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe7f:ea07/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:9405 errors:0 dropped:0 overruns:0 frame:0 TX packets:13 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:941973 (919.8 KiB) TX bytes:1788 (1.7 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:4 errors:0 dropped:0 overruns:0 frame:0 TX packets:4 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:344 (344.0 b) TX bytes:344 (344.0 b)
若想关闭eth0,则使用命令:
[root@www ~]# ifconfig eth0 down ##开启则为 ifconfig eth0 up 或者ifup eth0 、ifdown eth0 给eth0设置ip地址为: [root@www ~]# ifconfig eth0 192.168.16.1/24 ##或者 ifconfig eth0 192.168.16.1 netmask 255.255.255.0 [root@www ~]# ifconfig -a ##查看网卡配置,ip配置成功。 eth0 Link encap:Ethernet HWaddr 00:0C:29:7F:EA:07 inet addr:192.168.16.1 Bcast:192.168.16.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe7f:ea07/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:9800 errors:0 dropped:0 overruns:0 frame:0 TX packets:27 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:978177 (955.2 KiB) TX bytes:3170 (3.0 KiB)
路由管理命令:route
route -n 列出所有路由条目,不加-n会反解ip为主机名
例如:
[root@www ~]# route -n ##列出当前系统上的路由条目 Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.16.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.168.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 eth1 0.0.0.0 192.168.168.1 0.0.0.0 UG 0 0 0 eth1 route add 添加一个路由条目:格式如下 [root@www ~]# route add -net 172.16.0.0/24 gw 192.168.168.1 ##-net指明是添加网段路由,gw指明下一跳或网关地址
route del 删除一个路由条目:,格式如下
[root@www ~]# route del -net 172.16.0.0/24