CentOS 7.5系统管理与运维实战
上QQ阅读APP看书,第一时间看更新

3.3 Linux网络配置

Linux系统在服务器中占用较大份额,使用计算机首先要了解网络配置,本节主要介绍Linux系统的网络配置。

3.3.1 Linux网络相关配置文件

Linux网络配置相关的文件根据不同的发行版目录名称有所不同,但大同小异,主要有以下目录或文件。

(1)/etc/hostname:主要功能在于修改主机名称。

(2)/etc/sysconfig/network-scrips/ifcfg-enoN:设置网卡参数的文件,比如IP地址、子网掩码、广播地址、网关等,N为一串数字。

(3)/etc/resolv.conf:此文件设置了DNS相关的信息,用于将域名解析到IP。

(4)/etc/hosts:计算机的IP对应的主机名称或域名对应的IP地址,通过设置/etc/nsswitch.conf中的选项可以选择是DNS解析优先还是本地设置优先。

(5)/etc/nsswitch.conf(name service switch configuration,名字服务切换配置):规定通过哪些途径,以及按照什么顺序通过这些途径来查找特定类型的信息。

3.3.2 配置Linux系统的IP地址

要设置主机的IP地址,可以直接通过终端命令设置,如想设置在系统重启后依然生效,可以设置对应的网络接口文件,如【示例3-11】所示。

【示例3-11】

     [root@CentOS network-scripts]# cat ifcfg-eno33554984
     TYPE=Ethernet
     BOOTPROTO=none
     IPADDR0=192.168.146.150
     PREFIX0=24
     GATEWAY0=192.168.146.2
     DNS1=61.139.2.69
     DNS2=192.168.146.2
     DEFROUTE=yes
     IPV4_FAILURE_FATAL=no
     IPV6INIT=yes
     IPV6_AUTOCONF=yes
     IPV6_DEFROUTE=yes
     IPV6_PEERDNS=yes
     IPV6_PEERROUTES=yes
     IPV6_FAILURE_FATAL=no
     NAME=eno33554984
     UUID=3af72fa2-8186-4d54-83d7-8074fe8c057c
     ONBOOT=yes

主要字段的含义如表3.7所示。

表3.7 网卡设置参数说明

设置完ifcfg-eth0文件后,需要重启网络服务才能生效,重启后使用ifconfig查看设置是否生效:

     [root@CentOS network-scripts]# service network restart

同一个网络接口可以使用子接口的方式设置多个IP地址,如【示例3-12】所示。

【示例3-12】

当服务器重启或网络服务重启后,子接口配置将消失,如需重启后依然生效,可以将配置子接口命令加入/etc/rc.local文件中。

3.3.3 设置主机名

主机名是识别某个计算机在网络中的标识。设置主机名,使用hostname命令即可。在单机情况下主机名可任意设置,如以下命令在重新登录后发现主机名已经改变。

     [root@CentOS network-scripts]# hostname www.example.com

若要修改重启后依然生效,可以将主机名写入文件/etc/hostname中,如【示例3-13】所示。

【示例3-13】

     [root@www ~]# hostname
     www.example.com

3.3.4 设置默认网关

设置好IP地址以后,如果要访问其他的子网或Internet,用户还需要设置路由,在此不做介绍,这里采用设置默认网关的方法。在Linux中,设置默认网关有两种方法:

(1)第1种方法就是直接使用route命令。在设置默认网关之前,先用route –n命令查看路由表。可执行如下命令设置网关:

     [root@CenOS /]# route add default gw 192.168.1.254

如果不想每次开机都执行route命令,可把要执行的命令写入/etc/rc.d/rc.local文件中。

(2)第2种方法是在/etc/sysconfig/network-scripts/ifcfg-接口文件中添加如下字段:

     GATEWAY=192.168.10.254

同样,只要是更改了脚本文件,就必须重启网络服务来使设置生效,可执行下面的命令:

     [root@CentOS /]# service network restart

使用service命令时需要注意,由于CentOS 7.5中使用的是systemd,因此开启和停止服务通常使用systemctl代替,但也可以使用service。

提示

使用命令方式配置默认路由通常适用于临时测试。

3.3.5 设置DNS服务器

设置DNS服务器,修改/etc/resolv.conf文件即可。下面是一个resolv.conf文件的示例。

【示例3-14】

     [root@CentOS ~]#  cat /etc/resolv.conf
     nameserver  192.168.3.1
     nameserver  192.168.3.2
     options rotate
     options timeout:1 attempts:2

其中,192.168.3.1为第一名字服务器,192.168.3.2为第二名字服务器,options rotate选项指在这2个dns server之间轮询,option timeout:1表示解析超时时间1s(默认为5s),attempts表示解析域名尝试的次数。如需添加DNS服务器,可直接修改此文件。需要注意的是,使用nameserver指定的DNS服务器只有前三条生效。