查看及测试网络
1.查看网络接口地址
主机的网络接口卡(网卡)通常称为网络接口。在
Linux
操作系统中,使用
ifconfig
命 令可以查看网络接口的地址配置信息
(
1
)查看活动的网络接口设备
若采用
mini
版
CentOS 7
安装的系统,默认是没有
ifconfig
命令的,需要先通过
yum 方式安装 net-tools
软件包,才有
ifconfig
命令。
#
ifconfig
ens33
:第一块以太网卡的名称。“ens33”中的
“en”
是
“EtherNet”
的缩写,表示网卡 类型为以太网,“s”
表示热插拔插槽上的设备(
hot-plug Slot
),数字
“33”
表示插槽 编号。由此可以得知,CentOS 7
开始,使用基于固件、硬件拓扑和设备位置信 息分配的一致网络设备命名。
lo
:
“
回环
”
网络接口,“lo”是
“loopback”
的缩写,它不代表真正的网络接口,而是一 个虚拟的网络接口,其 IP
地址默认是
“127.0.0.1”
。
(
2
)查看指定的网络接口信息
当只需要查看其中某一个网络接口的信息时,可以使用网络接口的名称作为
ifconfig
命 令的参数。
#
ifconfig ens33
inet
:表示网络接口的
IP
地址,如
“192.168.4.11”
。
netmask
:表示网络接口的子网掩码,如
“255.255.255.0”
。
broadcast
:表示网络接口所在网络的广播地址,如
“192.168.4.255”
。
ether
:表示网络接口的物理地址(
MAC
地址),如
“00:0c:29:3a:81:cc”
。网络接口的物理地址通常不能更改,是网卡在生产时确定的全球唯一的硬件地址。
2
.查看主机名称
在
Linux
操作系统中,相当一部分网络服务都会通过主机名来识别主机,如果主机名配置不当,可能会导致程序功能出现故障。
#
hostname
3
.查看路由表条目
Linux
操作系统中的路由表决定着从本机向其他主机、其他网络发送数据的去向,是排 除网络故障的关键信息。
#
route
当目标网段为
“default”
时,表示此行是默认网关记录;当下一跳为
“gateway”
时,表 示目标网段是与本机直接相连的。但是,直接执行“route”
命令无法直接看出默认网关地址。
若结合
“-n”
选项使用,可以将路由记录中的地址显示为数字形式,这可以跳过解析主机 名的过程,在路由表条目较多的情况下能够加快执行速度。
# route -n
4
.查看网络连接情况
通过
netstat
命令可以查看当前操作系统的网络连接状态、路由表、接口统计等信息,
它是了解网络状态及排除网络服务故障的有效工具。以下是
netstat
命令常用的几个选项。
-a
:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)。
-n
:以数字的形式显示相关的主机地址、端口等信息。
-r
:显示路由表信息。
-l
:显示处于监听
状态的网络连接及端口信息。
-t
:查看
TCP
相关的信息。
-u
:显示
UDP
协议相关的信息。
-p
:显示与网络连接相关联的进程号、进程名称信息(该选项需要
root
权限)。
通常使用
“-anpt”
组合选项,以数字形式显示当前系统中所有的
TCP
连接信息,同时显示对应的进程信息。执行以下操作可以查看本机中是否有监听“TCP 80”端口(即标准 Web 服务)的
服务程序,输出信息中包括 PID
号和进程名称。
#
netstat -anpt | grep ":80"
除了
netstat
,
ss
命令也可以
查看网络连接情况,它
是
Socket Statistics
的缩写,主要 用于获取 socket
统计信息,它可以显示和
netstat
命令类似的输出内容。
以下是
ss
命令常用的几个选项。
-h
:
--help
通过该选项获取更多的使用帮助。
-V
:
--version
显示软件的版本号。
-t
:
--tcp
显示
TCP
协议的
sockets
。
-u
:
--udp
显示
UDP
协议的
sockets
。
-n
:
--numeric
不解析服务的名称,如
"22"
端口不会显示成
"ssh"
。
-l
:
--listening
只显示处于监听状态的端口。
-p
:
--processes
显示监听端口的进程。
-a:
--all
对
TCP
协议来说,既包含监听的端口,也包含建立的连接。
-r: --resolve
把
IP
解释为域名,把端口号解释为协议名称。
#
ss -t state established
2.测试网络连接
用户访问网络服务的前提是网络连接处于正常状态。若网络连接不稳定,甚至无法连接, 用户则无法正常访问网络服务。
1
.测试网络连通性
使用
ping
命令可以向目标主机持续地发送测试数据包,并显示反馈结果,直到按
Ctrl+C
组合键后中止测试,并显示最终统计结果。
#
ping 192.168.4.110
执行
ping
测试命令时,若不能获得从目标主机发回的反馈数据包,则表示在本机到目 标主机之间存在网络连通性故障。
#
ping 192.168.4.123
2
.跟踪数据包的路由途径
若服务器上没有
traceroute
命令,可通过
yum
方式安装
traceroute
软件包。
traceroute
命令可以用于测试从当前主机到目的主机之间经过了哪些网络结点,并显示各中间结点的连
接状态。
#
traceroute 192.168.7.7
3
.测试
DNS
域名解析
当域名解析出现异常时,将无法使用域名的形式访问网络中的
Web
站点、电子邮件系 统等服务。nslookup
命令是用来测试域名解析的专用工具,使用时只要指定要解析的目标域名作为参数即可。
# nslookup www.baidu.com
若能够成功反馈要查询域名的
IP
地址,则表示域名解析没有问题,否则需要根据实际 反馈情况来判断故障原因。
#
nslookup www.baidu.com
此外还有
dig
命令也可以用来测试域名解析,相对于
nslookup
命令,
dig
可以得到更多 的域名信息。
#
dig baidu.com
#
dig @202.106.0.20 baidu.com //使用指定的
DNS
服务器来解析
使用网络配置命令
1
.修改网卡的地址、状态
ifconfig
命令不仅可以用于查看网卡配置,还可以修改网卡的
IP
地址、子网掩码,也可
以绑定虚拟网络接口、激活或禁用网络接口。
(
1
)修改网卡的
IP
地址、子网掩码
需要设置网卡的地址时,命令格式如下:
ifconfig
网络接口名称
IP
地址
[ netmask
子网掩码
]
通常后一种方式用得更多一些。当不指定子网掩码时,将使用
IP
地址所在分类的默认 子网掩码。指定新的 IP
地址和子网掩码以后,原有的地址将会失效。
#
ifconfig ens33 192.168.168.1/24
(
2
)禁用、激活网络接口
需要临时禁用或者重新激活指定的网络接口时,需要结合
“down”
和
“up”
开关选项。网络 接口被禁用以后,将无法使用该网络接口与其他主机进行连接。
#
ifconfig ens37 down
(
3
)为网卡绑定虚拟接口
在对服务器网络进行调试的过程中,有时候需要临时在同一个网卡上使用一个新的
IP 地址,但是又不能覆盖原有 IP
地址而导致服务程序不可用。
#
ifconfig ens33:0 172.17.17.17
#
ifconfig
2
.添加、删除静态路由记录
route
命令不仅可以用于查看路由表信息,还可用来添加、删除静态的路由表条目,其
中也包括设置默认网关地址。
#
route add -net 192.168.3.0/24 gw 192.168.4.254
//
添加静态路由
#
route -n //确认添加的路由条目
通过
“route del”
操作可以删除路由记录,只要结合
“-net”
选项指定对应路由记录中目标网
段的地址即可。
#
route del -net 192.168.3.0/24
#
route -n
3
.修改主机的名称
#
hostname //查看原来的主机名
#
hostname www.bdqn.com //设置新的主机名
#
hostname //确认新的主机名
#
bash //启用新的 Shell
会话
,
查看变化
#
hostname
修改网络配置文件
1
.网络接口配置文件
网络接口的配置文件默认位于目录
/etc/sysconfig/network-scripts/
中,文件名格式为 “ifcfg-XXX”,其中
“XXX”
是网络接口的名称。
#
ls /etc/sysconfig/network-scripts/ifcfg-*
TYPE
:设置网卡类型,
“Ethernet”
表示以太网。
BOOTPROTO
:设置网络接口的配置方式,值为
“static”
时表示使用静态指定的
IP 地址,为“dhcp”
时表示通过
DHCP
的方式动态获取地址。
DEVICE
:设置网络接口的名称。
ONBOOT
:设置网络接口是否在
Linux
操作系统启动时激活。
IPADDR
:设置网络接口的
IP
地址。
NETMASK
:设置网络接口的子网掩码。
GATEWAY
:设置网络接口的默认网关地址。
2
.启用、禁用网络接口配置
在
CentOS 7
操作系统中,当修改了网络接口的配置文件以后,若要使新的配置生效, 可以重新启动 network
服务或者重启主机,具体操作如下。
#
systemctl restart network
#
ifdown ens33
#
ifup ens33
3
.主机名称配置文件
若要修改
Linux
操作系统的主机名,可以修改配置文件
/etc/hostname
。
#
vi /etc/hostname
#
hostnamectl set-hostname www.bdqn.com //设置新的主机名
#
bash //启用新的
Shell
会话
,
查看变化
#
hostname
4
.域名解析配置文件
(
1
)指定为本机提供
DNS
解析的服务器地址
/etc/resolv.conf
文件中记录了本机默认使用的
DNS
服务器的地址信息,对该文件所做 的修改将会立刻生效。Linux
操作系统中最多可以指定
3
个
不同 的 DNS
服务器地址,优先使用第一个
DNS
服务器。
#
vi /etc/resolv.conf
#
vi /etc/NetworkManager/NetworkManager.conf
(
2
)本地主机映射文件
/etc/hosts
文件中记录着一份主机名与
IP
地址的映射关系表,一般用来保存经常需要访问的主机的信息。
#
cat /etc/hosts
对于经常访问的一些网站,可以通过在
/etc/hosts
文件添加正确的映射记录,减少
DNS
查询过程,从而提高上网速度。