Linux网络设置

本文详细介绍了Linux系统中查看和设置网络配置的方法,包括网络接口信息、主机名称、路由表、网络连接情况、socket统计信息、数据包跟踪以及域名解析等关键操作。通过这些命令和工具,可以有效地管理和优化Linux服务器的网络环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

在使用 Linux 的过程中,网络设置是非常重要的一环,如果想要服务器正常运行的话,就需要把网络配置好,优化好。而怎样才能更好的配置和优化网络呢?下面我将介绍一下网络设置中的一些基本操作。

一、查看网络配置

1.查看网络接口信息

  • 查看所有活动的网络接口信息
    在这里插入图片描述

  • 查看指定网络接口信息
    在这里插入图片描述

第一行:
UP:代表此网络接口为启用状态(down为关闭状态)
RUNNING:代表网卡设备已连接
MULTICAST:表示支持组播
MTU:为数据包最大传输单元

第二行:
inet ip地址
netmask 子网掩码
broadcast 广播地址

第三行:IPv6地址

第四行:
Ethernet(以太网)表示连接类型;
ether:表示为网卡的MAC地址

第五行:接受数据包个数、大小统计信息

第六行:异常接受包的个数、如丢包量、错误等

第七行:发送数据包个数、大小统计信息

第八行:发送包的个数、如丢包量、错误等

  • 显示所有活动及非活动的连接
    在这里插入图片描述

2.设置网络接口参数

  • ifconfig 命令不仅可以用于查看网卡配置,还可以修改网卡的 IP 地址、子网掩码,也可以绑定虚拟网络接口、激活或禁用网络接口。
ifconfig ens37 192.168.191.140 netmask 255.255.255.0 		//临时配置网卡的ip地址
ifconfig ens37 192.168.191.140/24 		//当不指定子网掩码时,将使用 IP 地址所在分类的默认子网掩码
  • 启用、禁用网络接口配置
ifconfig ens37 down|up 或
ifup/ifdown ens37

ifdown ens33 && ifup ens33
//关闭并开启

如果只是禁用、启用某一个网络接口(而不是所有接口),可分别使用两个接口控制脚本 ifdown、ifup

  • 为网卡绑定虚拟接口
ifconfig ens33:0 192.168.191.141

在对服务器网络进行调试的过程中,有时候需要临时在同一个网卡上使用一个新的 IP 地址,但是又不能覆盖原有 IP 地址而导致服务程序不可用。
这时可以为网卡绑定一个虚拟的网络接口,然后为虚拟接口设置新的 IP 地址(相当于一块网卡配多个 IP 地址)。

二、查看主机名称 hostname

  1. 查看主机名
[root@localhost ~]# hostname
localhost.localdomain
  1. 临时修改主机名为cow
hostname cow
  1. 永久修改主机名
hostnamectl set-hostname cow
或者
vim /etc/hostname

三、查看路由表条目 route

  • 直接执行 route 命令可以查看当前主机中的路由表信息。
    在这里插入图片描述
    Destination 列对应目标网段的地址
    Gateway 列对应下一跳路由器的地址
    Iface 列对应发送数据的网络接口
    当目标网段为“default”时,表示此行是默认网关记录。
    当下一跳为“gateway”时,表示目标网段是与本机直接相连的。
  • 使用-n可以将路由记录中的地址显示为数字形式,这可以跳过解析主机名的过程,在路由表条目较多的情况下能够加快执行速度。
    在这里插入图片描述
  • 添加、删除静态路由记录
    route 命令不仅可以用于查看路由表信息,还可用来添加、删除静态的路由表条目,其中也包括设置默认网关地址(默认网关记录是一条特殊的静态路由条目)
    例:
    添加静态路由,通过“route add”操作可以添加路由记录,结合“-net”选项指定目标网段的地址,结合“gw”选项指定下一跳路由器的IP 地址。
route add -net 192.168.3.0/24 gw 192.168.10.1 		//表示可以通过192.168.10.1到192.168.3.0/24网络
  • 添加、删除默认网关记录
    需要注意的是,在同一个主机的路由表中只应有一条默认网关记录。若同时存在多条默认网关记录,则可能导致该主机的网络连接出现故障。
    添加、删除默认网关记录时,与添加、删除静态路由记录的命令格式类似,但指定目标网段时只需简单地使用“default”表示即可。
route add default gw 192.168.10.1
route del default gw 192.168.10.1

四、查看网络连接情况netstat

  • 查看系统的网络连接状态、路由表、接口统计等信息

常用选项:

 -n        以数字的形式显示相关的主机地址、端口等信息                   
 -r        显示路由表信息                                              
 -a        显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口) 
 -l        显示处于监听(Listenin状态的网络连接及端口信息。          
 -t        查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息。 
 -u        显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息。 
 -p        显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限 

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

[root@localhost ~]#netstat -antp |grep "80"
tcp6       0      0 :::80                   :::*                    LISTEN      21721/httpd 

五、获取socket统计信息ss

  • ss命令查看网络连接情况,主要用于获取 socket 统计信息,它可以显示和 netstat 命令类似的输出内容。
    常用选项:
-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 解释为域名,把端口号解释为协议名称。
[root@localhost ~]#ss -o state 'established' | grep ssh
tcp    0      36     192.168.191.144:ssh                  192.168.191.1:55058                 timer:(on,186ms,0)
//-o选项可用于显示计时器信息。该信息向我们展示了诸如重新传输计时器值、已经发生的重新传输的数量以及已发送的keepalive探测的数量
[root@localhost ~]#ss -t state established
Recv-Q Send-Q                                  Local Address:Port                                                   Peer Address:Port                
0      36                                    192.168.191.144:ssh                                                   192.168.191.1:55058  
//established, syn-sent, syn-recv, fin-wait-1, fin-wait-2, time-wait, closed, closed-wait, last-ack监听和关闭等状态
[root@localhost ~]#ss -tnl sport le 500
State      Recv-Q Send-Q                               Local Address:Port                                              Peer Address:Port              
LISTEN     0      128                                              *:111                                                          *:*                  
LISTEN     0      5                                    192.168.122.1:53                                                           *:*                  
LISTEN     0      128                                              *:22                                                           *:*                  
LISTEN     0      100                                      127.0.0.1:25                                                           *:*                  
LISTEN     0      128                                             :::111                                                         :::*                  
LISTEN     0      128                                             :::22                                                          :::*              

六、跟踪数据包 traceroute

  • 测试从当前主机到目的主机之间经过的网络节点
[root@localhost ~]#traceroute 192.168.191.146
traceroute to 192.168.191.146 (192.168.191.146), 30 hops max, 60 byte packets
 1  192.168.191.146 (192.168.191.146)  1.510 ms  1.377 ms  1.278 ms
//traceroute 命令能够比 ping 命令更加准确地定位网络连接的故障点(中断点),因此执行速度会比 ping 命令稍慢。
//在网络测试与排错过程中,通常会先使用 ping 命令测试与目的主机的网络连接,如果发现网络连接有故障,再使用 traceroute 命令跟踪查看是在哪个中 间结点存在故障。

七、域名解析 nslookup

  • 测试DNS域名解析
nslookup 目标主机地址 [DNS服务器地址]

例:

[root@localhost ~]#nslookup www.google.com
Server:		192.168.24.2			//所使用的 DNS 服务器
Address:	192.168.24.2#53

Non-authoritative answer:			//下面是 DNS 解析的反馈结果
Name:	www.google.com
Address: 66.220.155.14

八、域名解析配置文件

  • /etc/resolv.conf保存本机需要使用的DNS服务器的IP地址
[root@localhost~]# vim/etc/resolv.conf

search localdomain
nameserver 202.106.0.20
nameserver 202.106.148.1

1./etc/resolv.conf 文件中记录了本机默认使用的DNS服务器的地址信息,对该文件所做的修改将会立刻生效。
2.Linux系统中最多可以指定3个(第3个以后的将被忽略)不同的 DNS 服务器地址,优先使用第1个 DNS服务器。
3.resolv.conf 文件中的 “search localdomain” 行用来设置默认的搜索域(域名后缀)。例如,当访问主机“localhost”时,就相当于访问“localhost.localdomain”。

  • 本地主机映射文件
    /etc/hosts 文件中记录着一份主机名与IP地址的映射关系表,一般用来保存经常需要访问的主机的信息。当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到再去向DNS服务器查询。
    例:
    在 /etc/hosts 文件中添加 “119.75.218.70 www.baidu.com” 的映射记录,则当访问网站 www.baidu.com 时,将会直接向IP地址 119.75.218.70 发送 Web 请求,省略了向 DNS 服务器解析 IP 地址的过程。
[root@localhost~]#cat /etc/hosts
127 .0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
......
119.75.218.70  www.baidu.com

总结

  1. 查看网络配置,主机名,路由表条目以及网络连接情况
    -ifconfig、hostname、route、netstat、ss
  2. 测试网络连接
    -ping、traceroute、nslookup
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值