设为首页 收藏本站
查看: 366|回复: 0

[经验分享] RHEL系列网络配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-1 09:02:25 | 显示全部楼层 |阅读模式
   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命令:
QQ截图20150901090139.png b、如下图,轻松完成以下配置:
QQ截图20150901090147.png
配置完相应的ip以及DNS后,在命令行键入
[iyunv@www ~]# service network restart           ##CentOS6网络服务重启命令
[iyunv@centos7-51 ~]# systemctl restart network    ##CentOS7网络服务重启命令
网络服务重启后,新配置的ip地址便可以生效使用了。
CentOS6和CentOS7的tui启动命令虽然不同,但配置界面很相似。按照界面提示一步一步进行配置保存即可。
















2、配置文件
        这里需要说一下的是,CentOS6上面网卡的命名一般为:eth开头,后面跟上网卡的编号,

例如,第一块网卡名为eth0,第二块网卡名为eth1等等,Dell服务器对网卡的命名可能为em开头,后面跟编号,网卡名为em0,em1等等。
        CentOS7上面的网卡一般名为eno开头,后面跟上一串数字,例如我的网卡

QQ截图20150901090157.png
网卡的配置文件在/etc/sysconfig/network-scripts目录下,以ifcfg-开头
例如我CentOS6上的网卡名为eth0,则我的网卡配置文件的便是:/etc/sysconfig/network-scripts/ifcfg-eth0  ,下面我编辑一下这个文件,说明一下文件里面的各项参数的含义:
命令行键入:
1
2
3
4
5
6
7
8
9
10
11
12
[iyunv@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,下面我们编辑此文件,说明一下各项参数的含义:
命令行输入
1
2
3
4
5
6
7
8
9
10
11
[iyunv@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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[iyunv@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,则使用命令:

1
2
3
4
5
6
7
8
9
10
11
12
[iyunv@www ~]# ifconfig eth0 down    ##开启则为 ifconfig eth0 up 或者ifup eth0 、ifdown eth0
给eth0设置ip地址为:
[iyunv@www ~]# ifconfig eth0 192.168.16.1/24 ##或者 ifconfig eth0 192.168.16.1 netmask 255.255.255.0
[iyunv@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为主机名
例如:
1
2
3
4
5
6
7
8
9
[iyunv@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 添加一个路由条目:格式如下
[iyunv@www ~]# route add -net 172.16.0.0/24 gw  192.168.168.1  ##-net指明是添加网段路由,gw指明下一跳或网关地址





route del  删除一个路由条目:,格式如下
[iyunv@www ~]# route del -net 172.16.0.0/24


b、ip命令的使用:
命令格式:       ip [ OPTIONS ] OBJECT { COMMAND | help }   
                常用的COMMAND有:link(设备相关)  addr(IP地址相关)   route(路由相关)   


ip link(网络设备相关)
            常用选项:   

                                show
                                        [dev eth0]  查看指定接口信息
                                        [up]                仅显示启用状态的接口
                               
                                set 接口 up、down    (开启、关闭指定接口)

1
2
3
4
5
6
7
[iyunv@www ~]# ip link show   ##查看当前系统所识别的接口属性信息,可在后面加上up,只查看使用中的接口信息
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:7f:ea:07 brd ff:ff:ff:ff:ff:ff
[iyunv@www ~]# ip link set eth0 down ##关闭eth0 ,相当于 ifconfig eth0 down / ifdown eth0
[iyunv@www ~]# ip link set eth0 up    ##开启eth0 ,相当于ifconfig eth0 up / ifup eth0



ip addr 地址相关
        add|replace|change IPADDR dev   ##添加|替换|更改IP地址
        flush        清除所有地址
        label 'eth0:0'   添加在网卡最后,给ip添加标签
        show
例如:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[iyunv@www ~]# ip addr show  ##显示当前接口信息,show后面可跟具体的接口,查看指定接口信息
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:7f:ea:07 brd ff:ff:ff:ff:ff:ff
    inet 192.168.16.1/24 brd 192.168.16.255 scope global eth0
    inet6 fe80::20c:29ff:fe7f:ea07/64 scope link
[iyunv@www ~]# ip addr add 192.168.1.2/24 dev eth0  ##相当于ifconfig eth0 192.168.1.2/24
[iyunv@www ~]# ip addr show eth0  ##查看eth0的属性信息
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:7f:ea:07 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.2/24 scope global eth0
    inet6 fe80::20c:29ff:fe7f:ea07/64 scope link
       valid_lft forever preferred_lft forever





若此时,再对eth0执行IP地址添加命令,则会将第二次添加的ip设置为eth0的辅助ip,例如:
1
2
3
4
5
6
7
8
[iyunv@www ~]# ip addr add 192.168.1.3/24 dev eth0  ##辅助ip可有多个
[iyunv@www ~]# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:7f:ea:07 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.2/24 scope global eth0
    inet 192.168.1.3/24 scope global secondary eth0   ##辅助IP地址已配置成功
    inet6 fe80::20c:29ff:fe7f:ea07/64 scope link
       valid_lft forever preferred_lft forever



ip route路由相关:
常用选项:
show  显示路由信息,相当于route -n
add    添加路由条目,类似于route add
例如:ip route add  192.168.0.0/24 via 172.16.0.1  dev eth0
flush
[dev IFACE]
例如:
[iyunv@www ~]# ip route flush dev eth0
[via prefix] 删除一下一跳为***的条目
例如:
1
[iyunv@www ~]# ip route flush via 192.168.1.1









3、nmcli命令

命令格式:
nmcli  [ OPTIONS ] OBJECT { COMMAND | help }
其实nmcli和centos6上的ip命令极其相似,命令格式几乎完全相同,只不过用了不同的选项和子命令。
并且nmcli的子命令含义其实也和ip命令的子命令差不多。

子命令及常用选项:子命令可简写
connection   简写为:c  或者 con
    show    显示网卡信息
    modify 设置网卡属性
            modify的格式:
                modify IFACE [+|-]setting.property value
                            setting.property:ipv4.address|ipv4.gateway|ipv4.dns|ipv4.method (manual)
               
device   简写为 d 或者 dev
    status    查看网卡的状态信息
    show    查看网卡的属性信息
例如:
1
2
3
[iyunv@centos7-51 ~]# nmcli con show    ##显示网卡接口信息
NAME         UUID                                  TYPE            DEVICE      
eno16777736  fa2124e6-07d9-4d0f-bb3d-230627b48aa7  802-3-ethernet  eno16777736



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[iyunv@centos7-51 ~]# nmcli con modify eno16777736 +ipv4.addresses 192.168.1.3/24  ##为接口设置辅助IP地址,若不加“+”意为更改此网卡的ip地址
[iyunv@centos7-51 ~]# nmcli dev show  #上述添加了辅助地址,但此处并未生效,需要重新开关一下接口才可生效
GENERAL.DEVICE:                         eno16777736
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:0C:29:87:35:2A
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     eno16777736
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/14
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         192.168.0.58/24
IP4.GATEWAY:                            192.168.0.1
IP4.DNS[1]:                             192.168.0.1
IP6.ADDRESS[1]:                         fe80::20c:29ff:fe87:352a/64
IP6.GATEWAY:         
[iyunv@centos7-51 ~]# nmcli con down eno16777736 ; nmcli con up eno16777736
##down为关闭,up为开启,相当于ip link set INTERFACE up/down
Connection 'eno16777736' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/16)
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/17)



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[iyunv@centos7-51 ~]# nmcli d show  eno16777736
##此时,命令所查出的结果显示,此网卡的辅助ip地址已生效,此时也证明了,nmcli所配置的接口属性是永久生效的。
GENERAL.DEVICE:                         eno16777736
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:0C:29:87:35:2A
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     eno16777736
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/17
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         192.168.0.58/24
IP4.ADDRESS[2]:                         192.168.1.3/24
IP4.GATEWAY:                            192.168.0.1
IP4.DNS[1]:                             192.168.0.1
IP6.ADDRESS[1]:                         fe80::20c:29ff:fe87:352a/64
IP6.GATEWAY:                           
[iyunv@centos7-51 ~]# nmcli con modify eno16777736 ipv4.gateway 192.168.1.1 ##设置默认网关









补充两条查看服务以及所对应端口号的命令:
ss和netstat,这两条命令功能相同,选项也几乎相同。
                                        网络连接相关
                                                   [address_family_options]  
                                                   [--tcp|-t]  
                                                   [--udp|-u]   
                                                   [--raw|-w]           裸套接字(bu shiyong tcp ye bu shiyong udp)
                                                   [--listening|-l]
                                                   [--all|-a]           所有状态
                                                   [--numeric|-n]        不反解ip和端口号(以数字格式显示ip和端口)
                                                   [--extend|-e[--extend|-e]] 扩展格式信息
                                                   [--program|-p] 显示相关进程及PID
例如:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[iyunv@www ~]# ss -tunlp  ##显示当前系统中处于监听模式下的基于tcp以及udp协议的服务,并且协议以端口模式呈现
Netid  State      Recv-Q Send-Q                                                                             Local Address:Port                                                              Peer Address:Port
udp    UNCONN     0      0                                                                                              *:68                                                                                            *:*      users:(("dhclient",2425,6))
udp    UNCONN     0      0                                                                                      127.0.0.1:867                                                                                           *:*      users:(("rpc.statd",1539,5))
udp    UNCONN     0      0                                                                                              *:111                                                                                           *:*      users:(("rpcbind",1476,6))
udp    UNCONN     0      0                                                                                              *:631                                                                                           *:*      users:(("cupsd",1573,9))
udp    UNCONN     0      0                                                                                              *:48156                                                                                         *:*      users:(("rpc.statd",1539,8))
udp    UNCONN     0      0                                                                                              *:803                                                                                           *:*      users:(("rpcbind",1476,7))
udp    UNCONN     0      0                                                                                             :::40117                                                                                        :::*      users:(("rpc.statd",1539,10))
udp    UNCONN     0      0                                                                                             :::111                                                                                          :::*      users:(("rpcbind",1476,9))
udp    UNCONN     0      0                                                                                             :::803                                                                                          :::*      users:(("rpcbind",1476,10))
tcp    LISTEN     0      128                                                                                           :::22                                                                                           :::*      users:(("sshd",1743,4))
tcp    LISTEN     0      128                                                                                            *:22                                                                                            *:*      users:(("sshd",1743,3))
tcp    LISTEN     0      128                                                                        127.0.0.1:631                                                                                           *:*      users:(("cupsd",1573,7))
tcp    LISTEN     0      128                                                                                          ::1:631                                                                                          :::*      users:(("cupsd",1573,6))
tcp    LISTEN     0      100                                                                                          ::1:25                                                                                           :::*      users:(("master",1852,13))
tcp    LISTEN     0      100                                                                                    127.0.0.1:25                                                                                            *:*      users:(("master",1852,12))
tcp    LISTEN     0      128                                                                                    127.0.0.1:6010                                                                                          *:*      users:(("sshd",2059,8))
tcp    LISTEN     0      128                                                                                          ::1:6010                                                                                         :::*      users:(("sshd",2059,7))
tcp    LISTEN     0      128                                                                                           :::46305                                                                                        :::*      users:(("rpc.statd",1539,11))
tcp    LISTEN     0      128                                                                                            *:57612                                                                                         *:*      users:(("rpc.statd",1539,9))
tcp    LISTEN     0      128                                                                                           :::111                                                                                          :::*      users:(("rpcbind",1476,11))
tcp    LISTEN     0      128                                                                                            *:111                                                                                           *:*      users:(("rpcbind",1476,8))




netstat命令还可查看路由条目信息:
1
2
3
4
5
6
[iyunv@www ~]# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
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         0 0          0 eth1
0.0.0.0         192.168.168.1   0.0.0.0         UG        0 0          0 eth1








运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-108144-1-1.html 上篇帖子: Grep命令及正则表达式 下篇帖子: Linux程序包管理:rpm、yum、编译安装 网络
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表