文本关键字: Linux,CentOS, 网络服务, eth0, 网卡配置项
一, 查看网络信息
通常我们查看本机的网络是否正常, 主要需要知道的就是网卡是否在正常工作, 相关的网络信息 (IP 地址, 广播地址, 子网掩码等) 是什么. 除此之外, 我们需要测试当前机器是否连入互联网, 或者是否能够与网关正常通信.
1. ifconfig
ifconfig 是一个最常用的, 可以查看和设置各网卡的工具.
直接使用 ifconfig 命令: 列出所有当前已启用的网卡信息
使用 ifconfig 和网卡名称: 具体查看某一块网卡信息
2. ping
使用 ping 命令可以用于测试网络的连通性, 可以方便我们排查问题, 通常首先会检查网关的连通性, 随后是外网的某一地址, 如: 百度.
检查与网关的连通性
检查与外网某一地址的连通性
二, 修改网络配置
1. 网卡配置项
DEVICE: 设备名称
TYPE: 网络类型(以太网等)
ONBOOT: 开机时是否自动启用(yes/no)
HWADDR:Mac 地址(物理地址)
BOOTPROTO: 网卡获取配置的方式(dhcp/static/none / 其他)
IPADDR:IP 地址
NETMASK: 子网掩码
GATEWAY: 网关地址
BROADCAST: 广播地址
DNS:DNS 服务器地址
NAME: 网卡名称
USERCTL: 普通用户是否可以控制(yes/no)
2. 临时生效
使用 ifconfig 命令可以临时修改网卡的配置, 截止至下一次网卡重启, 或计算机重启前一直有效.
临时修改 IP 地址
临时绑定多个 IP 地址
3. 永久生效
使用 setup 工具对网络配置就行修改, 或者直接修改网卡配置文件都可以使配置永久生效, 第一次修改完成时, 需要手动重新启动.
setup 工具: 使用 root 用户进入 setup 工具进行网络配置
可以对网卡和 DNS 进行设置, 需要注意的是: 网卡配置文件中的 DNS 设置拥有更高的优先级, 如果你希望为所有的网卡都配置相同的 DNS 服务器地址, 那么你应该确保网卡配置文件中没有出现 DNS 的配置, 然后在 DNS 配置中指定 DNS 服务器地址.
此处可以对网卡进行激活或者关闭, 也可以移除网卡配置, 选中网卡直接回车进入配置.
显示星号的部分代表开启和启用, 通过空格切换. 当 dhcp 为关闭状态时才可手动修改 IP 地址等配置, 否则为锁定状态, 修改完成后保存退出.
在网卡配置文件中的 DNS 配置会被写入到 DNS 解析配置中.
配置文件方式修改:/etc/sysconfig/network-scripts/ifcfg-eth0
使用 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
三, 网络状态控制
当我们需要让网卡的最新配置生效, 通常要重启网卡, 可以使用如下常用的两种方式实.
1. 服务控制
通过直接重启网络服务的方式, 切记: 这会波及所有网卡! 所以如果是个人学习阶段没有关系, 如果是在多网卡的服务器环境请慎用.
命令格式: service {服务名称} {服务操作}
service network status: 查看网络服务运行状态
service network start: 启动网络服务
service network stop: 停止网络服务
service network restart: 重启网络服务
2. 网卡控制
如果我们只想对某一块网卡进行重启, 可以使用 ifconfig 命令, 如: ifconfig eth0 up/down. 但是笔者更偏爱于使用另外一种简便的命令.
停用 eth0 网卡: ifdown eth0
启用 eth0 网卡: ifup eth0
四, 网络总开关与 DNS 配置
1. 网络总开关
相关配置文件:/etc/sysconfig/network
对于 CentOS 系统, 还有一个网络总开关配置文件. 当然一般我们只有在修改系统主机名的时候才会用到这个文件, 其中有两个配置项, 一个是网络总开关, 一个是主机名, 如下.
只有网络总开关是打开的状态, 才能够正常使用网络服务. 但是一般也没人会把 yes 改为 no, 知道一下就好, 大多数网络不能正常工作主要还是网卡的配置文件问题.
2. DNS 配置
DNS 配置文件:/etc/resolv.conf
在上文中已经提到, 网卡配置文件中的 DNS 配置拥有更高的优先级, 网卡生效后, DNS 的配置会被直接写入到 DNS 的配置文件中. 所以我们可以直接查看 resolv.conf 中的内容来查看当前机器使用的 DNS 服务器地址是什么, 如果网卡的配置文件中并没有指定 DNS 地址, 那我们可以手动编辑该文件来添加, 只需要将地址换行罗列即可.
来源: http://blog.51cto.com/10984944/2459553