[Linux入门] Linux 网络设置入门:从查看、测试到配置全攻略
目录
一、查看网络信息:了解你的网络状态
1️⃣核心工具:ip命令(替代ifconfig)
基本语法:
实用操作示例:
2️⃣查看路由表:route命令
3️⃣查看网络连接状态:netstat与ss
netstat常用用法:
ss更高效,常用用法:
4️⃣查看主机名称:hostname命令
二、测试网络连通性:排查网络故障
1️⃣ping命令:测试主机是否可达
2️⃣traceroute:追踪数据包的路由路径
3️⃣测试 DNS 域名解析:nslookup与dig
nslookup:简单查询
dig:更详细的 DNS 信息
三、配置网络参数:临时与永久设置
1️⃣临时配置(适合调试)
启用 / 停止网卡
临时添加 / 删除 IP 地址
添加 / 删除路由与默认网关
2️⃣永久配置(推荐,通过配置文件)
网络接口配置(Ubuntu 17.10+ 用netplan)
修改主机名
DNS 与本地解析配置
总结
一、查看网络信息:了解你的网络状态
在进行任何网络操作前,首先需要知道当前系统的网络状态:网卡是否启用?IP 地址是什么?路由表如何配置?Linux 提供了多个命令帮你获取这些信息。
1️⃣核心工具:ip命令(替代ifconfig)
过去,ifconfig是查看网络接口的常用命令,但如今许多 Linux 发行版(如 Ubuntu)已默认不安装它,取而代之的是功能更强大的ip命令。ip命令可管理网络接口、IP 地址、路由表等,是网络查看与配置的 “全能工具”。
如果系统中已安装 net-tools 包,则可以使用 ifconfig。
基本语法:
bash
ip [选项] 对象 {命令}
- 常用对象:
link(网络设备)、addr(IP 地址)、route(路由表)等。 - 常用选项:
-s(详细信息)、-4(仅 IPv4)、-6(仅 IPv6)、-h(人类可读格式)。 
实用操作示例:
  查看所有网络接口信息(简写ip a):
bash
ip addr show (简写: ip a )
ip addr show # 完整命令ip a # 简写,推荐使用
    输出结果中,你会看到类似ens33和lo的接口:
ens33:物理以太网接口。en代表以太网(Ethernet),s表示热插拔插槽,33是插槽编号。lo:回环接口(loopback),虚拟接口,IP 默认是127.0.0.1,用于本机网络测试。- 
查看指定接口信息(如
ens33):bash
ip addr show ens33输出中包含接口状态(
UP表示启用)、MAC 地址、IP 地址(inet为 IPv4,inet6为 IPv6)、子网掩码等关键信息。 
    查看网络设备运行状态(link对象):
- 
bash
 - 
ip link list ( 简写: ip l l ) --- 显示网络设备运行状态
 - 
ip -stats link list ( 简写: ip -s l l) --- 显示详细设备信息
 - 
ip link list # 简写 ip l lip -s link list # 带统计信息(接收/发送的字节、数据包等)其中
RX(Receive接收)和TX(发送)的统计数据可帮助判断接口是否正常工作(如errors不为 0 可能表示网络故障)。 
2️⃣查看路由表:route命令
路由表决定了数据从本机发送到其他网络的 “路径”,通过route命令可查看:
bash
route # 查看路由表(默认显示主机名)route -n # 以IP地址显示(更快,推荐)
输出中关键列的含义:
Destination:目标网段(default表示默认网关)。Gateway:下一跳路由器 IP(0.0.0.0表示直连网段)。Iface:数据发送的网卡接口(如ens33)。
3️⃣查看网络连接状态:netstat与ss
这两个命令用于查看当前的网络连接(如 TCP/UDP 连接、监听端口等),ss是netstat的现代替代者,速度更快。
netstat常用用法:
bash
netstat -anpt # 显示所有TCP连接(数字形式,含进程信息)netstat -anpt | grep \":22\" # 过滤SSH(22端口)相关连接
ss更高效,常用用法:
bash
ss -t -a -p # 显示所有TCP连接及进程ss -t -l # 显示监听中的TCP端口ss -u -a # 显示所有UDP连接ss -t state established # 显示已建立的TCP连接
4️⃣查看主机名称:hostname命令

在 Linux 操作系统中,相当一部分网络服务都会通过主机名来识别主机,如果主机名配置不当,可能会导致程序功能出现故障。
使用 hostname 命令可以查看当前主机的主机名,不用添加任何选项或参数。
二、测试网络连通性:排查网络故障
网络不通?别急着重启!用以下命令一步步定位问题。
1️⃣ping命令:测试主机是否可达
ping通过发送 ICMP 数据包检测目标主机是否连通,是最基础的网络测试工具。
bash
ping www.baidu.com # 测试与百度的连接
- 成功:会持续显示响应时间(如
time=30ms)。 - 失败:可能显示
Destination Host Unreachable(主机不可达)或Request timeout(超时,可能被防火墙拦截)。 - 终止测试:按
Ctrl+C,会显示统计结果(如发送 / 接收数据包数量、丢包率)。 
2️⃣traceroute:追踪数据包的路由路径
如果ping失败,traceroute可帮你找到故障点(哪一跳路由器出问题)。
bash
traceroute
# 先安装(Ubuntu):sudo apt install traceroute# 追踪到百度的路径:traceroute www.baidu.com
输出中,每一行代表一个中间路由器,*表示该节点无响应。通过对比各节点的响应时间,可定位网络中断的位置。
3️⃣测试 DNS 域名解析:nslookup与dig
域名(如www.baidu.com)需要通过 DNS 解析为 IP 地址才能访问,这两个命令用于检测 DNS 是否正常。
nslookup:简单查询
bash
nslookup www.baidu.com
成功会返回域名对应的 IP(如110.242.68.66)和使用的 DNS 服务器(如127.0.0.53)。
dig:更详细的 DNS 信息
bash
dig www.baidu.com # 基础查询dig @8.8.8.8 www.baidu.com # 指定谷歌DNS(8.8.8.8)查询
输出包含查询状态(NOERROR表示成功)、DNS 服务器、解析结果等,适合深入排查 DNS 问题。
三、配置网络参数:临时与永久设置
网络配置分 “临时”(重启失效)和 “永久”(重启保留),按需选择。
1️⃣临时配置(适合调试)
启用 / 停止网卡
bash
ip link set up / down
ip link set ens33 up # 启用ens33网卡ip link set ens33 down # 停止ens33网卡
临时添加 / 删除 IP 地址
在对服务器网络进行调试的过程中,有时候需要临时在同一个网卡上使用一个新的 IP地址,但是又不能覆盖原有 IP 地址而导致服务程序不可用。
bash
ip addr add / del 192.168.204.135/24 broadcast 192.168.204.255 dev br0
# 给br0接口添加IP(192.168.204.135/24):ip addr add 192.168.204.135/24 broadcast 192.168.204.255 dev br0# 删除该IP:ip addr del 192.168.204.135/24 broadcast 192.168.204.255 dev br0
添加 / 删除路由与默认网关
bash
route add -net 192.168.3.0/24 gw 192.168.204.254 (添加静态路由)
route del -net 192.168.3.0/24(删除该路由)
# 添加到192.168.3.0/24网段的路由(下一跳192.168.204.254):route add -net 192.168.3.0/24 gw 192.168.204.254# 删除该路由:route del -net 192.168.3.0/24# 设置默认网关(临时):route add default gw 192.168.204.2# 删除默认网关:route del default gw 192.168.204.2
2️⃣永久配置(推荐,通过配置文件)
临时配置重启后会失效,生产环境需通过配置文件永久设置。
 网络接口配置(Ubuntu 17.10+ 用netplan)
netplan是 Ubuntu 推荐的网络配置工具,配置文件通常位于/etc/netplan/,格式为 YAML。
步骤:
①创建配置文件:
bash
vim /etc/netplan/ens37-netcfg.yaml
sudo vim /etc/netplan/ens33-config.yaml
②写入配置(以固定 IP 为例):
yaml
network: version: 2 renderer: networkd ethernets: ens33: # 网卡名称 dhcp4: no # 关闭DHCP addresses: [192.168.204.133/24] # IP及子网掩码 gateway4: 192.168.204.2 # 网关 nameservers: addresses: [114.114.114.114, 8.8.8.8] # DNS服务器
③保存退出后,应用配置:
bash
sudo netplan apply
修改主机名
主机名用于标识本机,可通过命令或配置文件修改:
bash
# 临时修改(当前会话生效):hostname newname# 永久修改(重启生效):sudo hostnamectl set-hostname newname # 推荐,无需重启# 或修改配置文件:sudo vim /etc/hostname # 写入新主机名,重启生效
DNS 与本地解析配置
- 
/etc/resolv.conf:指定 DNS 服务器,修改后立即生效(最多 3 个,优先第一个):bash
sudo vim /etc/resolv.conf# 添加:nameserver 114.114.114.114 # 国内DNSnameserver 8.8.8.8 # 谷歌DNS - 
/etc/hosts:本地 IP - 主机名映射表(优先于 DNS 查询),适合加速常用网站访问:bash
sudo vim /etc/hosts# 添加:119.75.218.70 www.baidu.com # 访问百度时直接用该IP,不查DNS 
ip a(ip addr show简写)ip a(查看所有接口)、ip a show ens33(指定接口)ip l l(ip link list简写)ip l l(确认网卡是否启用)route -nroute -n(查看默认网关是否正确)ss -tulnss -tuln(检查 80/22 端口是否监听)ping ping www.baidu.com(测试外网连通)traceroute traceroute www.baidu.com(排查 ping 失败原因)nslookup nslookup www.baidu.com(确认域名是否解析正确)ip link set  up/downip link set ens33 up(激活网卡)route add default gw route add default gw 192.168.204.2hostnamectl set-hostname hostnamectl set-hostname web-servernetplan apply/etc/netplan/*.yaml后执行生效总结
Linux 网络设置看似复杂,但掌握核心命令和配置文件后会变得清晰:
- 查看信息:用
ip命令(ip a、ip link)、route -n、ss。 - 测试网络:
ping测连通性,traceroute找故障点,nslookup/dig查 DNS。 - 配置参数:临时配置用
ip/route,永久配置改netplan/hostname/resolv.conf。 


