文章目录
本章概述一、查看网路配置1、查看网络接口信息-ifconfig2、修改网络配置文件3、设置网络接口 二、主机名称配置文件1、查看主机名2、修改主机名2.1 临时修改2.2 永久修改 三、查看路由表条目-route1、route命令1.1 直接使用route1.2 使用route -n 2、添加、删除静态路由记录3、添加、删除默认网关记录 四、netstat命令五、获取socket统计信息-ss六、测试网络连接6.1 ping命令6.2 traceroute命令 七、域名解析-nslookup1、nslookup命令2、域名解析配置文件查看与修改 八、本地主机映射九、总结
本章概述
介绍查看网络信息,如何修改网络信息,以及网络中路由器中的路由表如何配置。
一、查看网路配置
1、查看网络接口信息-ifconfig
执行 ifconfig 命令
主机的网络接口卡(网卡)通常称为网络接口。在Linux操作系统中,使用ifconfig命令可以查看网络接口的地址配置信息(Interface Configuration )。
注:若采用的是mini版的Centos 7 安装的系统,默认是没有ifconfig命令的,需要通过yum安装net-tools软件包,才可以使用ifconfig 命令。
使用ifconfig命令
①直接使用ifconfig命令
②单个查找ens33信息
上述内容解释
行数 | 内容 |
---|---|
第一行 | 以太网卡的名字不是常见的etho,变成了ens33。其中en代表以太网卡。 ens33代表PCI接口的物理位置为(0,3),其中横坐标代表bus,纵坐标代表slot UP:网络接口为启用状态(down为关闭状态) RUNNING:代表网卡设备已连接 MULTICAST:表示支持组播 MTU:为数据包最大传输单元 |
第二行 | 网卡的IP地址、子网掩码、广播地址 |
第三行 | IPv6地址 |
第四行 | Ethernet(以太网)表示连接类型,ether:表示为网卡的mac地址 |
③查找全部的网络接口信息
ifconfig -a或ip a
2、修改网络配置文件
网络接口的配置文件默认位于/etc/sysconfig/netwrok-scripts/ifcfg-ens33
文件名格式为“ifcfg-XXX”,其中“xxx”是网络接口的名称。
例如:网卡ens33的配置文件是“ifcfg-ens33”,回环接口lo的配置文件是“ifcfg-lo”
在centos 7 操作系统中,当修改了网络接口的配置文件以后,若要使新的配置生效,可以重新启动network服务或者重启主机
systemctl restart network #重新加载网络注意:建议关闭NetworkManager服务,否则有时启动network会报错systemctl stop NetworkManager #关闭systemctl disable NetworkManager #开机不自启
3、设置网络接口
ifconfig命令不仅可以用于查看网卡配置,还可以修改网卡的IP地址,子网掩码,也可以绑定虚拟网络接口、激活或禁用网络接口。
ifconfig ens33 20.0.0.56/24#临时配置网卡的ip地址,重启后失效
启用、禁用网络接口配置
禁用ifconfig ens33 down 或 ifdown ens33#临时禁用网卡 #关闭网卡启用ifconfig ens33 up 或 ifup ens33#重新激活网卡 #启动网卡
为网卡绑定虚拟接口,在对服务器网络进行调试的过程中,有时候需要临时在同一个网卡上使用一个新的IP地址,但是又不能覆盖原有的IP地址而导致服务程序不可用。这时可以为网绑定一个虚拟的网络接口,然后为虚拟接口设置新的IP地址。(相当于一块网卡配多个IP地址)
二、主机名称配置文件
具体步骤,在系统管理第一章基础命令中有详解
1、查看主机名
hostname
2、修改主机名
2.1 临时修改
当前登录时生效,重启失效
hostname 主机名 #修改主机名bash #刷新
2.2 永久修改
①直接修改
systemctl set-hostname 主机名 #修改主机名bash 或su #刷新生效
②通过配置文件修改
vim /etc/hostname修改里面的内容为主机名(重启生效)
三、查看路由表条目-route
路由表:Linux操作系统中的路由表决定着从本机向其他主机、其他网络发送数据的去向,是排除网络故障的关键信息。
1、route命令
1.1 直接使用route
当目标网段为“defaults”时,表示此行是默认网关记录,当下一跳为“gateway”时,表示目标网段时与主机直接相连的。但是,直接执行“route”命令无法直接看出默认网关地址。
1.2 使用route -n
查看路由,使用-n可以将路由记录中的地址显示为数字形式,这可以跳过解析主机名的过程,在路由表条目较多的情况下能够加快执行速度
2、添加、删除静态路由记录
route命令不仅可以用于查看路由表信息,还可以用来添加、删除静态的路由条目,其中包括设置默认网关地址(默认网关是一条特殊的静态路由条目)
2.1 添加静态路由
通过“route add” 操作可以添加路由记录,结合“ -net ” 选项指定目标网段的地址,结合“ gw ”选项指定下一跳路由器ip地址
2.2 删除静态路由
3、添加、删除默认网关记录
在同一个主机的路由表中只有一条默认网关记录,若同时存在多条默认网关记录,则可能导致该主机的网络连接出现故障。
添加删除默认网关记录时,与添加、删除静态路由记录的命令格式类型,但制定目标网段时,只需简单地使用“ default ”表示即可。
添加默认网关记录
删除默认网关记录
四、netstat命令
在系统管理的安全管理中有讲过,再记录一遍。
查看当前操作系统的网络连接状态、路由表、接口统计等信息,它是了解网络状态及网络服务故障的有效工具。
选项 | 作用 |
---|---|
-n | 以数字的形式显示相关的主机地址,端口等信息 |
-r | 显示路由表信息 |
-a | 显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口) |
-l | 显示处于监听(Listening)状态的网络连接及端口信息 |
-t | 查看TCP相关信息 |
-u | 查看UDP相关信息 |
-p | 显示与网络连接相关的进程号、进程名称信息(需要root权限) |
用法:
①通常使用“-anpt”组合选项,以数字形式显示当前系统中所有的 TCP 连接信息,同时显示对应的进程信息
②配合管道符grep过滤出特定的记录
操作实例:
①查看当前系统中使用TCP和UDP网络的连接的数量
②以数字的形式显示路由表的信息
③查看sshd的连接信息
五、获取socket统计信息-ss
也可以查看网络连接情况,主要用于获取socket统计信息,它可以显示和netstat命令类似的输出内容。但是ss的优势在于它能够显示更多信息的有关TCP和连接状态的信息,而且比netstat更快速更高效。
当服务器的socket连接数变得非常大时,无论时使用netstat命令还是直接 cat /proc/net/tcp。执行的速度都会很慢,ss快速的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于统计的模快,可以获得Linux内核中第一手的信息,这就确保了ss的快捷高效。
ss命令时Linux centos 7 中iproute软件包的一部分,默认已经安装。
常用选项
选项 | 功能 |
---|---|
-h | 通过该选项获取更多的使用帮助 |
-V | 显示软件的版本号 |
-t | 显示TCP协议的sockets |
-u | 显示UDP协议的sockets |
-n | 不解析服务的名称,如“22”端口不会显示成“ssh” |
-l | 只显示处于箭筒状态的端口 |
-p | 显示监听端口的进程 |
-a | 对TCP协议来说,既包含监听的端口,也包含建立的连接 |
-r | 把IP解释为域名,把端口号解释为协议名称 |
-o | 选项可用于显示计时器信息,该信息向我们展示了重新传输计时器值,已经发生的重新传输的数量以及已发送的keepalive探测的数量 |
-w | 英语字符串精确匹配 |
①只有在访问的情况下才能查询到端口,无操作查询不出
六、测试网络连接
6.1 ping命令
使用ping命令可以向目标主机持续的发送测试数据包,并显示反馈结果,直到按ctrl +c 组合键后终止测试,并显示最终统计结果
常用选项
选项 | 功能 |
---|---|
-c “数量” | 指定ping的次数 |
-i “秒数” | 指定间隔几秒发送一个网络包,默认是1秒一次 |
-w “时间” | 指定ping的时间为5s |
注意:
若看到"Destination Host Unreachable"的反馈信息,则表示目的主机不可达,可能目标地址不存在或者主机已经关闭。
若看到"Network is unreachable"的反馈信息,则表示没有可用的路由记录(如默认网关),无法达到目标主机所在的网络。当目标主机有严格的防火墙限制时,或者当网络中存在影响通信过程稳定性的因素(如网卡故障、病毒或网络攻击等)时,可能收到Request timeout”的反馈结果。
实例:
①指定ping的次数为3次(-c)
②指定间隔0.5秒发送一个ping包,且只ping 4次(-i)
③设置ping的时间为5s(-w)
6.2 traceroute命令
跟踪数据包
测试从当前主机到目的主机之间经过的哪些网络节点,并显示各个中间节点的连接状态(相应时间)。对于无法相应的节点,连接状态显示未“ * ”。
第一次发送一个包,TTL=1。第二次发送一个包,TTL=2,一直到最后一个生命周期的包为止。通过生命周期判断,中间经过多少个设备。
格式: traceroute 目标地址主机(或域名)
注意: 若服务器没有traceroute 命令,可以通过yum方式安装traceroute软件包。
traceroute 命令与ping命令相比
traceroute命令能够比ping命令更加准确的定位网络连接的故障点(中断点),因此执行速度会比ping命令稍慢。在网络测试与排错过程红通常会先使用ping命令测试与目的主机的网络连接,如果发现网络连接故障,再根据traceroute命令跟踪查看时哪个中间节点存在故障。
七、域名解析-nslookup
1、nslookup命令
测试DNS域名解析
格式: nslookup 目标主机地址 (DNS服务器地址)
2、域名解析配置文件查看与修改
配置文件:/etc/resolv.conf
①/etc/resolv.conf 文件记录了本机默认使用的DNS服务器的地址信息,对于该文件所做的修改将会立刻生效。
②Linux系统中最多可以指定3个不同的DNS服务器(超过3个的会被忽略),有限使用第一个DNS服务器。
③resolv.cong文件中的“searh localdomain”行用来设置默认的搜索域(域名后缀),例如:当访问主机“localhost”时,就相当于访问“localhost.localdomain ”。
八、本地主机映射
注:在如何使用xshell连接linux系统时,说明了如何配置/etc/hosts文件
保存主机名与ip地址的映射记录
映射文件路径:/etc/hosts
/etc/hosts 文件中记录着一份主机名与IP地址的映射关系表,一般用来保存经常需要访问的主机的信息。
当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到再去向DNS服务器查询。
hosts文件和DNS服务器比较
①默认情况下,系统首先从hosts文件查找解析记录
②hosys文件只对当前主机有效
③hosts文件可减少DNS查询过程,从加快访问速度
九、总结
查看网络路由的配置可以使用ifconfig命令进行查看,也可以使用ifconfig命令进行开启或关闭某个网卡,在路径/etc/sysconfig/network-scripts/ifcfg-ens33文件中可以进行修改网卡信息。
使用route命令查看查看本机路由表信息,加上-n选项会使得查看速率更快,也可以使用route add 命令添加静路由或默认路由。
查看网络统计信息可以使用netstat命令查看,也可以使用ss命令插查看,效果比netstat命令块,但是生产环境中使用最多的还是netstat命令。
测试网络连接信可以使用ping命令,还有几个特别的选项,根据选项发出不同大小,规定个数,规定时间的数据包,也可以使用traceroute命令进行跟踪数据包,查看数据包经过哪些路由器。
域名解析可以使用nslookup命令,将域名,解析成ip地址。