查看及测试网络、使用网络配置命令及修改网络配置文件

一、查看网络配置

1.查看网络接口地址-ifconfig

主机的网络接口卡(网卡)通常称之为“网络接口”
在Linux中,使用ifconfig命令可以查看网络接口的地址配置信息
使用ifconfig命令不带任何选项和参数的时候,会显示当前主机中已启动(运行中)的网络接口信息
查看主网卡

在这里插入图片描述

inet:网络接口的IP地址
netmask:子网掩码
broadcast:广播地址
ether:网络接口的物理(MAC)地址,通常不能更改,是网卡在生产时确定的全球唯一的硬件地址
mtu:最大传输单元(字节数为1500字节);每个网络设备都有自己的mtu,默认为1500;若我们设备的mtu大于网络设备,数据在传输的过程中就会被分片拆包,导致网速(效率)变慢;若小于,则发挥不了最大传输能力;最理想的是本地与网络的MTU值相等(基本都是默认1500)
如果想要查看所有的网络接口信息,加上“-a”选项即可

2.查看主机名称-hostname

查看(不附加选项和参数)或者临时设置当前主机名
hostname [name]

[root@localhost ~]# hostname mxx
[root@localhost ~]# hostname
mxx
[root@localhost ~]# su        ##(或bash)启用新的Shell会话
[root@mxx ~]# 



永久设置主机名
hostnamectl set-hostname [主机名]
或
vim /etc/hostname (自行添加主机名,设置完后需重启系统才能生效)

3.查看路由表条目-route

查看或设置主机中路由表信息
route [-n]

例:
[root@mxx ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.126.2   0.0.0.0         UG    100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.126.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33

- Destination列对应目标网段的地址
- Gateway列对应下一跳路由器的地址
- Iface列对应发送数据的网络接口
- 目标网段为“0.0.0.0”时表示此行为默认网关记录
- 下一跳是“0.0.0.0”时表示目标网段与本主机直连

4.查看网络连接情况-netstat

查看系统的网络连接状态、路由表、接口统计等信息
netstat [选项]

常用选项
-a:显示当前主机中所有活动的网络连接情况(包括监听、非监听状态的服务端口)
-n:以数字的形式显示相关的主机地址、端口等信息
-r:显示路由表信息
-l显示处于田径状态的网络连接及端口信息
-t:查看TCP协议相关信息
-u:显示UDP协议相关信息
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要root权限)

通常使用“-anpt”组合选项,以数字形式显示当前系统中所有的TCP连接信息,同时显示对应的进程信息;结合管道命令“grep”还可以在结果中过滤出所需的特定记录

例如,执行以下操作可以查看本机中是否有监听“TCP80”端口(即标准FTP服务)的服务程序,输出信息中包括PID号和
进程号名称
[root@mxx ~]# netstat -anpt | grep ":80"
扫描tcp和udp端口
[root@mxx ~]# netstat -nautp

5.获取socket统计信息-ss

查看系统的网络连接情况,获取socket统计信息
ss [选项]

socket:即套接字,上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议根进行交互的接口

常用选项
-t、-u、-n、-l、-p、-a、-r

用的不多,有兴趣的同学可以再去查询深入了解下

二、测试网络连接

1.测试网络连通性-ping

ping [选项] 目标主机
使用ping命令可以向目标主机持续的发送测试数据包,并反馈显示结果,直到按“Ctrl+C”组合键后终止测试并显示最终
统计结果
例:测试从本机到百度网站的连通性情况(记得Ctrl+C终止,否则会一直显示下去)
[root@mxx~]# ping www.baidu.com
PING www.a.shifen.com (180.101.49.12) 56(84) bytes of data.
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=1 ttl=128 time=58.0 ms
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=2 ttl=128 time=48.4 ms
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=3 ttl=128 time=52.0 ms
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=4 ttl=128 time=41.2 ms
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=5 ttl=128 time=47.5 ms
^C
--- www.a.shifen.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4008ms
rtt min/avg/max/mdev = 41.227/49.484/58.045/5.535 ms

可能会发生以下情况

“Destination Host Unreacheble”表示目的主机不可达,可能目标地址不存在或者目的主机已关闭

“Netwokr is unreacheable”表示没有可用的路由记录(如默认网关),无法到达目标主机所在网络

也有可能因为网络中存在影响通信过程稳定的因素(如网卡故障、病毒或网络攻击)时,会看到“Request timeout”的
反馈结果,表示与目的主机连接超时(数据包响应缓慢或丢失)

也还有可能是目标主机防火墙的限制导致连接超时反馈

2.跟踪数据包的路由途径-traceroute

测试从当前主机到目的主机之间经过了哪些网络节点,并显示了各中间节点的连接状态(响应时间)
对于无法显示的节点,连接状态将显示“*”

例:从本主机到百度之间,需要跨越一个路由器192.168.126.2
[root@xcf ~]# traceroute www.baidu.com
traceroute to www.baidu.com (180.101.49.11), 30 hops max, 60 byte packets
 1  gateway (192.168.126.2)  0.088 ms  0.037 ms  0.024 ms

traceroute命令能比ping命令更加准确的定位网络连接的故障点(中断点),执行命令也会比ping稍慢一点
在网络测试与排错过程中,通常会先试用ping命令测试与目的主机的网络连接,如果发现有故障,再来使用traceroute命令跟踪查看故障在哪个中间节点
也是记得按Ctrl+C终止

3.测试DNS域名解析-nslookup

当域名解析出现异常的时候,将无法再使用域名的形式来访问网络中的Web站点、电子邮件系统等服务
nslookup是专门用来测试域名解析的专用工具,使用时只要指定要解析的目标域名作为参数即可

nslookup 目标主机地址 [DNS服务器地址]
示例:
执行以下命令后,nslookup程序将提交查询请求,询问百度站点对应的IP地址是多少
[root@mxx ~]# nslookup www.baidu.com
Server:		192.168.126.2        ##所使用的的DNS服务器
Address:	192.168.126.2#53        ##DNS的服务器IP地址和端口号

Non-authoritative answer:        ##以下为DNS解析的反馈结果
www.baidu.com	canonical name = www.a.shifen.com.
Name:	www.a.shifen.com
Address: 180.101.49.11
Name:	www.a.shifen.com
Address: 180.101.49.12

若能够成功反馈要查询域名的IP地址,则表示域名解析没有问题,否则需要根据实际反馈情况来判断故障原因

三、使用网络配置命令

在Linux主机中,手工修改网络配置有两种最基本的方法:

1 临时配置:使用命令调整网络参数
 (1)简单、快速,可直接修改运行中的网络参数
 (2)一般只适合在调试网络的过程中使用
 (3) 系统重启以后,所做的修改将会失效

2 固定设置:通过配置文件修改网络参数
 (1) 修改各项网络参数的配置文件
 (2)适合对服务器设置固定参数时使用
 (3) 需要重载网络服务或者重启以后才会生效
 (4) 相对而言复杂一点,但相当于“永久配置”

1.设置网络接口参数-ifconfig

设置网络接口的IP地址、子网掩码

	fconfig 网络接口 ip地址 [netmask 子网掩码]  
	或
	inconfig 网络接口 ip地址[/子网掩码长度]

通常后一种方式用的多一些,当不指定子网掩码的时候,将使用ip地址所在分类默认子网掩码

指定新的IP地址和子网掩码后,原有的地址将会失效

示例:
[root@mxx~]# ifconfig eth0 192.168.168.1/24(或 ifconfig eth0 192.168.168.1 netmask 255.255.255.0)
##将网卡echo的IP地址设置为192.168.168.1,子网掩码长度为24

禁用(临时)或者重新激活网卡

ifconfig 网络接口 up
ifconfig 网络接口 down

网络接口被禁用后,将无法再使用该网络接口与其他主机进行连接

设置虚拟网络接口

在对服务器进行调试的过程中,有时需临时在同一个网卡上使用一个新的IP地址,但又不能覆盖原有IP地址而导致服务程序不可用
相当于在一个网卡上配置多个IP地址

格式(示例):
ifconfig 网络接口:序号 IP地址

[root@mxx ~]# ifconfig ens33:1 11.11.11.11
[root@mxx ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.126.3  netmask 255.255.255.0  broadcast 192.168.126.255
        inet6 fe80::8559:70c4:715b:a5b5  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:b4:c9:c0  txqueuelen 1000  (Ethernet)
        RX packets 1905  bytes 154593 (150.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1224  bytes 161199 (157.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens33:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 11.11.11.11  netmask 255.0.0.0  broadcast 11.255.255.255
        ether 00:0c:29:b4:c9:c0  txqueuelen 1000  (Ethernet)

2.设置路由记录-route(临时)

route命令不仅可以用来查看路由表信息,还可以用来添加、删除静态的路由条路,其中也包括设置默认网关地址

默认网关记录是一条特殊的静态路由条目

[root@mxx ~]# route        ##查看路由信息
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 ens33
11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.126.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33

添加到指定网段的路由记录

默认网关的IP地址应与本机其中一个接口的IP地址在同一个网段内

##格式:
route add -net 网段地址 gw IP地址
##通过“route add”添加路由记录,结合“net”指定目标网段的地址,结合“gw”指定下一跳路由器的IP地址,
##示例:
[root@mxx ~]# route add -net 192.168.133.0/24 gw 192.168.122.10        ##添加静态路由,本机访问另一个网段192.168.133.0/24的数据都发给192.168.122.10
[root@mxx ~]# route        ##确认已添加成功
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 ens33
11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
11.0.0.0        0.0.0.0         255.0.0.0       U     100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.126.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.133.0   192.168.122.10  255.255.255.0   UG    0      0        0 virbr0

删除到指定网段的路由记录

[root@mxx~]# route del -net 192.168.133.0/24
[root@mxx ~]# route        ##没了,删除成功
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 ens33
11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.126.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33

向路由表中添加默认网关记录

格式:
route add default gw IP地址

删除路由表中默认的网关记录

格式:
route del default gw IP地址

注意:在同一个主机的路由表中只应有一条默认网关记录,若同时存在多条则可能导致该主机网络连接故障

四、修改网络配置文件

1.网络接口配置文件

网络接口的配置文件默认位于目录“/etc/sysconfig/network-scripts/”中,文件名格式为“ifcfg-XXX”,其中“XXX”是网络接口的名称
“ifcfg-ens33”:是第一块以太网卡的配置文件

[root@mxx ~]# ls /etc/sysconfig/network-scripts/ifcfg-*
/etc/sysconfig/network-scripts/ifcfg-ens33
/etc/sysconfig/network-scripts/ifcfg-lo
##“lo”是回环接口

查看网卡配置
在这里插入图片描述

TYPE:设置网卡类型,以上表示为以太网
ONBOOT:设置网络接口是否在Linux系统启动时自动激活
NETMASK:设置网络接口的子网掩码
GATEMASK:设置网络接口的默认网关地址
DNS:设置DNS服务器的IP地址

2.启用、禁用网络接口配置

当修改了网络接口的配置文件后,若要使新的配置生效,需重启网卡或主机

重启network网络服务

[root@mxx ~]# systemctl restart network        (重启所有网卡)
或
[root@xcf ~]# service network restart
Restarting network (via systemctl):                        [  确定  ]

禁用、启用网络接口

[root@mxx~]# ifdown ens33        (这里是禁用或启用单个网卡)
##注,若在Xshell中执行此命令,则界面再不可用了,连接不上,需回到VM虚拟机中重新启动网络接口
##这时你会发现网络不可用了↓↓↓
[root@mxx ~]# ping www.baidu.com
ping: www.baidu.com: 未知的名称或服务
[root@mxx~]# ifup ens33        ##恢复后又可以继续上网了
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/6)
[root@mxx~]# ping www.baidu.com
PING www.a.shifen.com (180.101.49.12) 56(84) bytes of data.
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=1 ttl=128 time=36.2 ms
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=2 ttl=128 time=31.8 ms
...略

3.主机名称配置文件

通过“/etc/hostname”文件来修改主机名

[root@mxx ~]# vim /etc/hostname 
##仅识别第一行作为主机名,并重启后生效

通过“hostnamectl”来修改主机名

[root@mxx ~]# vim /etc/hostname 
[root@mxx ~]# hostnamectl set-hostname mxx1
[root@mxx ~]# bash
[root@mxx1 ~]# hostname
mxx1

4.域名解析配置文件

/etc/resolv.conf文件中记录了本机默认使用的DNS服务器的IP地址,对该文件所做的修改将会立刻生效
在这里插入图片描述
以上“serch”后面跟的是域名后缀,即当访问主机时,相当于访问“localhost.localdomain”

Linux系统中最多可以指定3个(3个以后的将被忽略)不同的DNS服务器地址,优先使用第一个DNS服务器

CentOS7需要在NetworkManager.conf文件main段内设置dns=none,并重启NetworkManager服务,或者使用CentOS7新添加nmcil命令进行设置

5.本地主机映射文件

/etc/hosts文件中记录着一份主机名与IP地址的映射关系表

一般用来保存经常需要访问的主机的信息
在这里插入图片描述
当访问一个未知的域名的时候,会先查看该文件中是否有相对应的映射记录,如果找不到再去向DNS服务器查询

对于经常使用的一些网址,可以通过在/etc/hosts文件添加正确的映射记录,减少DNS查询,从而提高上网速率

若添加错误的映射记录,则可能会导致网站访问出现异常

hosts文件只保存在本地,所以只对当前主机生效,而无法作用于整个网络

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值