本篇是Linux小白最佳实践第6篇,目的就是让白菜们了解Linux网络是如何配置的。Linux系统在服务器市场占有很大的份额,尤其在互连网时代,要使用计算机就离不开网络。
想每天能听到小妞的语音播报,想学更多学校里和书本上学不大的IT技术或技能,欢迎关注微信公众号:xiniubook2008。或加微博:我的图书我做主,参加活动,免费获书。
Linux系统在服务器占用较大份额,使用计算首先要了解网络配置,本节主要介绍Linux系统的网络配置。
Linux网络配置相关的文件根据不同的发行版目录名称有所不同,但大同小异,主要有以下目录或文件。
(1)/etc/sysconfig/network:主要功能在于修改主机名称与是否启动network。
(2)/etc/sysconfig/network-scrips/ifcfg-ethN:是设置网卡参数的文件,比如IP地址、子网掩码、广播地址、网关等。N为数字,第1块网卡对应的文件名为ifcfg-eth0。第2块为ifcfg-eth1,以此类推。
(3)/etc/resolv.conf:此文件设置了DNS相关的信息,用于将域名解析到IP。
(4)/etc/hosts:计算机的IP对应的主机名称或域名对应的IP地址,通过设置/etc/nsswitch.conf中的选项可以选择是DNS解析优先还是本地设置优先。
(5)/etc/nsswitch.conf(name service switch configuration,名字服务切换配置):规定通过哪些途径,以及按照什么顺序通过这些途径来查找特定类型的信息。
要设置主机的IP地址,可以直接通过终端命令设置,如想设置在系统重启后依然生效,可以通过设置对应的网络接口文件,如示例11-18所示。
【示例11-11】
[root@CentOSnetwork-scripts]# cat ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:7F:08:9D
ONBOOT=yes
BOOTPROTO=static
BROADCAST=192.168.3.255
IPADDR=192.168.3.100
NETMASK=255.255.255.0
每个字段的含义如表11.7所示。
表11.7 网卡设置参数说明
参数 |
说明 |
DEVICE |
设备名,此处为第1块网卡,对应网络接口为eth0 |
HWADDR |
网卡的MAC地址 |
ONBOOT |
系统启动时是否设置此网络接口 |
BOOTPROTO |
使用动态IP 还是静态IP |
BROADCAST |
广播地址 |
IPADDR |
IP地址 |
NETMASK |
子网掩码 |
设置完ifcfg-eth0文件后,需要重启网络服务才能生效,重启后使用ifconfig查看设置是否生效:
[root@CentOSnetwork-scripts]# service network restart
同一个网络接口可以设置多个IP地址,如示例11-12所示。
【示例11-12】
[root@CentOS~]# ifconfig eth0:5 192.168.3.105 netmask 255.255.255.0 up
[root@CentOSnetwork-scripts]# ifconfig
eth0 Link encap:Ethernet HWaddr00:0C:29:7F:08:9D
inet addr:192.168.3.100 Bcast:192.168.3.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe7f:89d/64 Scope:Link
UPBROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RXpackets:27400 errors:0 dropped:0 overruns:0 frame:0
TXpackets:28086 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RXbytes:2375573 (2.2 MiB) TXbytes:12120151 (11.5 MiB)
eth0:5 Link encap:Ethernet HWaddr00:0C:29:7F:08:9D
inet addr:192.168.3.105 Bcast:192.168.3.255 Mask:255.255.255.0
UPBROADCAST RUNNING MULTICAST MTU:1500 Metric:1
如需服务器重启依然生效,可以将此命令加入/etc/rc.d/rc.local文件中。
主机名是识别某个计算机在网络中的标识,设置主机名可以使用hostname命令即可。在单机情况下主机名可任意设置,如以下命令,重新登录后发现主机名已经改变。
[root@CentOSnetwork-scripts]# hostname mylinux
如要修改重启后依然生效,可以修改/etc/sysconfig/network文件中对应的HOSTNAME行。如示例11-13所示。
【示例11-13】
[root@mylinux~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=mylinux
设置好IP地址以后,如果要访问其他的子网或Internet,用户还需要设置路由,在此不做介绍,这里采用设置缺省网关的方法。在Linux中,设置缺省网关有两种方法:
(1)第1种方法就是直接使用route命令,在设置缺省网关之前,先用route �Cn命令查看路由表。执行如下命令设置网关。
[root@CenOS/]# route add default gw 192.168.1.254
(2)第2种方法是在/etc/sysconfig/network 文件中添加如下字段:
GATEWAY=192.168.10.254
同样,只要是更改了脚本文件,必须重启网络服务来使设置生效,可执行下面的命令:
[root@CentOS/]#/etc/rc.d/init.d/network restart
对于第1种方法,如果不想每次开机都执行route 命令,则应该把要执行的命令写入/etc/rc.d/rc.local 文件中。
设置DNS服务器需修改/etc/resolv.conf文件即可。下面是一个resolv.conf文件的示例。
【示例11-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为第二名字服务器,option rotate选项指在这2个dns server之间轮询,option timeout:1表示解析超时时间1s(默认为5秒),attempts表示解析域名尝试的次数。如需添加DNS服务器,可直接修改此文件。
喜欢可以购买《超容易的Linux系统管理入门书》。写书评得奖品。