xinlugang 2019-12-18
文本关键字:Linux、CentOS、网络服务、eth0、网卡配置项
通常我们查看本机的网络是否正常,主要需要知道的就是网卡是否在正常工作,相关的网络信息(IP地址、广播地址、子网掩码等)是什么。除此之外,我们需要测试当前机器是否连入互联网,或者是否能够与网关正常通信。
ifconfig是一个最常用的,可以查看和设置各网卡的工具。
使用ping命令可以用于测试网络的连通性,可以方便我们排查问题,通常首先会检查网关的连通性,随后是外网的某一地址,如:百度。
使用ifconfig命令可以临时修改网卡的配置,截止至下一次网卡重启,或计算机重启前一直有效。
使用setup工具对网络配置就行修改,或者直接修改网卡配置文件都可以使配置永久生效,第一次修改完成时,需要手动重新启动。
可以对网卡和DNS进行设置,需要注意的是:网卡配置文件中的DNS设置拥有更高的优先级,如果你希望为所有的网卡都配置相同的DNS服务器地址,那么你应该确保网卡配置文件中没有出现DNS的配置,然后在DNS配置中指定DNS服务器地址。
此处可以对网卡进行激活或者关闭,也可以移除网卡配置,选中网卡直接回车进入配置。
显示星号的部分代表开启和启用,通过空格切换。当dhcp为关闭状态时才可手动修改IP地址等配置,否则为锁定状态,修改完成后保存退出。
在网卡配置文件中的DNS配置会被写入到DNS解析配置中。
使用setup工具修改的方式其实本质上也是修改网卡的配置文件。需要注意的是,如果是手动进行相关信息的配置,一定要使用正确的子网掩码和广播地址,并且IP地址一定要与网关在同一网段。对于VMware虚拟化软件:vmnet0(桥接模式)、vmnet1(仅主机模式)、vmnet8(NAT模式)分别有不同的网关。
桥接模式:将虚拟机当成一台真实存在的机器,直接连入宿主机所在的网络,局域网内的其他机器也能访问到该虚拟机,则网关地址应与宿主机相同。
仅主机模式:使虚拟机只能和宿主机通信,不能连入外网(除非使用代理转发),则网关地址应和宿主机中vmnet1的网卡地址相同,通常为xxx.xxx.xxx.1,虚拟机可以使用该地址与宿主机通信。
NAT模式:是虚拟机能够和宿主机共享网络,并且也能够与宿主机通信,则网关地址默认被指配为xxx.xxx.xxx.2,宿主机中vmnet8的网卡地址为xxx.xxx.xxx.1,虚拟机可以使用该地址与宿主机通信。
如果网关没有设置正确,则会直接导致虚拟机无法正常的与外网进行网络通信(尤其在NAT模式下)。方便大家复制,以下给出文本:
DEVICE=eth0 TYPE=Ethernet UUID=b56a4da9-b82a-4b32-9ee5-b2b08f546e64 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static # 根据对应的虚拟机网卡或连入的路由器网段进行设置 IPADDR=192.168.19.145 NETMASK=255.255.255.0 GATEWAY=192.168.19.2 # DNS1相当于主DNS服务器地址 DNS1=192.168.19.2 DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" USERCTL=no HWADDR=00:0C:29:98:FE:94 PREFIX=24 # 最后一次连接的时间点:Unix时间戳 LAST_CONNECT=1576595442
当我们需要让网卡的最新配置生效,通常要重启网卡,可以使用如下常用的两种方式实。
通过直接重启网络服务的方式,切记:这会波及所有网卡!所以如果是个人学习阶段没有关系,如果是在多网卡的服务器环境请慎用。
如果我们只想对某一块网卡进行重启,可以使用ifconfig命令,如:ifconfig eth0 up/down。但是笔者更偏爱于使用另外一种简便的命令。
对于CentOS系统,还有一个网络总开关配置文件。当然一般我们只有在修改系统主机名的时候才会用到这个文件,其中有两个配置项,一个是网络总开关,一个是主机名,如下。
只有网络总开关是打开的状态,才能够正常使用网络服务。但是一般也没人会把yes改为no,知道一下就好,大多数网络不能正常工作主要还是网卡的配置文件问题。
在上文中已经提到,网卡配置文件中的DNS配置拥有更高的优先级,网卡生效后,DNS的配置会被直接写入到DNS的配置文件中。所以我们可以直接查看resolv.conf中的内容来查看当前机器使用的DNS服务器地址是什么,如果网卡的配置文件中并没有指定DNS地址,那我们可以手动编辑该文件来添加,只需要将地址换行罗列即可。