一、查看及测试网络
1、查看网络配置
(1)查看网络接口地址或指定网络接口信息
- 主机的网络接口卡(网卡)通常称为网络接口。在 Linux 操作系统中,使用 ifconfig 命令可以查看网络接口的地址配置信息(Interface Configuration)
1、查看活动网络接口设备
mini 版 CentOS7 安装的系统,默认是没有 ifconfig 命令的,需要用yum安装net-tools
(cat /etc/sysconfig/network-scripts/ifcfg-ens33)查看网卡
[root@localhost ~]# ip a
[root@localhost ~]# ifconfig
或者
[root@localhost ~]# ifconfig ens33 //指定
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.4.11 netmask 255.255.255.0 broadcast 192.168.4.255
inet6 fe80::9106:d38b:670d:1a89 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:3a:81:cc txqueuelen 1000 (Ethernet)
RX packets 4625 bytes 428860 (418.8 KiB) //接受的数据包
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2302 bytes 344920 (336.8 KiB) //发送的数据包
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
备注:
ens33:第一块以太网卡的名称。“ens33”中的“en”是“EtherNet”的缩写,表示网卡类型为以太网,“s”表示热插拔插槽上的设备(hot-plug Slot),数字“33"表示插槽编号
lo:“回环”网络接口,“o”是“loopback”的缩写,它不代表真正的网络接口,而是个虚拟的网络接口,其IP地址默认是“127.0.0.1”
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)查看主机名称
[root@localhost ~]# hostname
(3)查看路由表条目
-
- Destination 列对应目标网段的地址
- lface 列对应发送数据的网络接口
- Gateway 列对应下一跳路由器的地址
- Destination 列对应目标网段的地址
[root@localhost ~]# route
//当目标网段为“default”时,表示此行是默认网关记录;当下一跳为“gateway"时,表示目标网段是与本机直接相连的
[root@localhost ~]# route -n
//选项n可以将路由记录中的地址显示为数字形式,这可以跳过解析主机名的过程,在路由表条目较多的情况下能够加快执行速度
(4)查看网络连接情况
[root@localhost ~]# netstat
-a:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
-n:以数字的形式显示相关的主机地址、端口等信息
-r:显示路由表信息
-l:显示处于监听(Listening)状态的网络连接及端口信息
-t:查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息
-u:显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限)
备注:
需要软件包net-tools
通常使用“-anpt”组合选项,以数字形式显示当前系统中所有的 TCP 连接信息,同时显示对应的进程信息。结合管道命令使用"grep"命令,还可以在结果中过滤出所需要的特定记录
[root@localhost ~]# netstat -anpt | grep sshd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1165/sshd
[root@localhost ~]# ss -t state established
-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 解释为域名,把端口号解释为协议名称。
2、测试网络连接
(1)测试网络连通性
[root@localhost ~]# ping
//按Ctrl+C组合键终止
//当网络中存在影响通信过程稳定性的因素(如网卡故障、病毒或网络攻击等)时,使用ping 命令测试可能会频繁看到“Request timeout”的反馈结果,表示与目标主机间的连接超时(数据包响应缓慢或丢失)
(2)跟踪数据包的路由途径
[root@localhost ~]# yum -y install traceroute //需要下载traceroute
[root@localhost ~]# traceroute 192.168.7.7
#traceroute 命令能够比 ping 命令更加准确地定位网络连接的故障点(中断点),因此执行速度会比 ping 命令稍慢
#在网络测试与排错过程中,通常会先使用 ping 命令测试与目的主机的网络连接,如果发现网络连接有故障,再使用 traceroute 命令跟踪査看是在哪个中间结点存在故障
(3)测试DNS域名解析
[root@localhost ~]# yum -y install bind-utils //需要下载bind-utils
[root@localhost ~]# nslookup baidu.com
#nslookup 命令是用来测试域名解析的专用工具,使用时只要指定要解析的目标域名作为参数即可
[root@localhost ~]# nslookup www.google.com
;; connection timed out; trying next origin // 尝试下个起因
;; connection timed out; can't find xxx.yyy.ZZZ: NXDOMAIN //表示要查询的域名不存在
;; connection timed out; no servers could be reached //表示不能连接到指定的 DNS 服务器
#dig 命令也可以用来测试域名解析,相对于 nslookup 命令,dig 可以得到更多的域名信息,dig 的全称是(domain information groper)
[root@localhost ~]# dig baidu.com
#dig 在查询过程中,还可以指定特点的 DNS 服务器。如果不指定 DNS 服务器,默认会使用/etc/resolve.conf 里面的地址作为 DNS 服务器
二、查看网络地址参数
- 配置网络参数有两种:
- 临时配置:通过命令行直接修改当前正在使用的网络地址,修改后立即可以生效。这种方式操作简单快速、执行效率高,一般在调试网络的过程中使用。但由于所做的修改并没有固定地存放在静态的文件中,因此当重启 network服务或重启主机后将会失效
- 固定配置:通过配置文件来存放固定的各种网络地址,需要重启 network 服务或重启主机后才会生效。这种方式操作上相对要复杂一些,但相当于“永久配置”,一般在需要为服务器设置固定的网络地址时使用
1、使用网络配置命令
1、修改网卡的地址、状态
#ifconfig网络接口名称|P地址[netmask 子网掩码]
或
#ifconfig 网络接口名称 IP 地址[/子网掩码长度]
例:
([root@localhost ~]# ifconfig ens33 192.168.168.1/24
或
[root@localhost ~]# ifconfig ens33 192.168.168.1 netmask 255.255.255.0)
(1)禁用、激活网络接口
[root@localhost ~]# ifconfig ens33 down //结合up开启和down禁止
(2)为网卡绑定虚拟接口
#在对服务器网络进行调试的过程中,有时候需要临时在同一个网卡上使用一个新的IP地址,但是又不能覆盖原有IP 地址而导致服务程序不可用
#这时可以为网卡绑定一个虚拟的网络接口,然后为虚拟接口设置新的 IP 地址(相当于一块网卡配多个 |P 地址)
[root@localhost ~]# ifconfig ens33:0 172.17.17.17
2、添加、删除静态路由记录
(1)添加、删除到指定网段的路由记录
#添加路由记录
[root@www ~]# route add -net 192.168.3.0/24 gw 192.168.10.254 //添加静态路由
[root@www ~]# route -n //确认添加的路由条目
#删除路由记录
[root@www ~]# route del -net 192.168.3.0/24
[root@www ~]# route -n
(2)添加、删除默认网关记录
[root@www ~]# route -n | grep "192.168.4.1" //查看原路由表中的默认网关记录
0.0.0.0 192.168.4.1 0.0.0.0 UG 100 0 0 ens33
[root@www ~]# route del default gw 192.168.4.1 //删除默认网关记录 192.168.4.1
[root@www ~]# route -n | grep "192.168.4.1"//确认删除结果(检索时无输出)
[root@www ~]# route add default gw 192.168.4.254 //添加新的默认网关记录 192.168.4.254
[root@ww ~]# route -n|grep“192.168.4.254” //确认新的默认网关记录
0.0.0.0 192.168.4.254 0.0.0.0 UG 100 0 0 ens33
(3)修改主机名称
#hostname 命令不仅可以用于显示当前主机的名称,还可以修改当前主机的名称。在新登录的用户会话(She 环境)中,命令提示符中的主机名部分也会出现相应的变化
#临时修改
[root@localhost ~]# hostname //查看原来的主机名
localhost.localdomain
root@localhost ~l# hostname www //设置新的主机名
[root@localhost ~]# hostname //确认新的主机名
www
[root@localhost ~]# bash //启用新的 Shell 会话,查看变化
[root@www ~l#hostname
www.bdgn.com
#永久修改
[root@localhost ~]# vi /etc/hostname
添加:
www.bdqn.com
#永久修改(方法二)
[root@localhost ~]# hostnamectl set-hostname www
[root@localhost ~]# bash
[root@www ~]#hostname
(4)域名解析配置文件
1、指定为本机提供 DNS 解析的服务器地址
[root@localhost ~]# vi /etc/resolv.conf
search localdomain
nameserver 202.106.0.20
nameserver 202.106.148.1
//在 CentOS7环境下,如果按照上面方式配置,过一段时间会被系统重新覆盖或清除
[root@localhost ~]# vi /etc/NetworkManager/NetworkManager.conf
[main]
#plugins=ifcfg-rh,ibft
dns=none ##在main区域添加此行
[root@localhost ~]# [root@manager ~]# systemctl restart NetworkManager
2、本地主机映射文件
cat/etc/hosts文件
添加ip与域名的映射
2、修改网络配置文件
1、网络接口配置文件
#网络接口的配置文件默认位于目录/etc/sysconfig/network-scripts/中,文件名格式为“ifcfg-XXX”,其中“XXX"是网络接口的名称
[root@localhost ~]# ls /etc/sysconfig/network-scripts/ifcfg-ens33
/etc/sysconfig/network-scripts/ifcfg-ens33
/etc/sysconfig/network-scripts/ifcfg-lo
TYPE=Ethernet
BOOTPROTO=static
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.4.11
NETMASK=255.255.255.0
GATEWAY=192.168.4.1
-
-
- TYPE:设置网卡类型,“Ethernet”表示以太网
- BOOTPROTO:设置网络接口的配置方式,值为“static”时表示使用静态指定的 IP地址,为“dhcp”时表示通过 DHCP 的方式动态获取地址
- DEVICE:设置网络接口的名称
- ONBOOT:设置网络接口是否在 Linux 操作系统启动时激活
- IPADDR:设置网络接口的 IP 地址。
- NETMASK:设置网络接口的子网掩码
- GATEWAY:设置网络接口的默认网关地址
-
2、启用、禁用网络接口配置
[root@localhost ~]# systemctl restart network
或
[root@localhost ~]# ifdown ens33
[root@localhost ~]# ifup ens33
3、IP的添加和删除
#添加网卡
[root@localhost ~]# cp ifcfg-ens33 ifcfg-ens36
[root@localhost ~]# vim ifcfg-ens36
//需要把UUID删掉
#子接口的添加
[root@localhost ~]# cp ifcfg-ens33 ifcfg-ens33:0
[root@localhost ~]# vim ifcfg-ens33:0
[root@localhost ~]# vim ifcfg-ens33
IPADDR0=IP0
PREFIXO=24
IPADDR1=IP1
PREFIX0=24