学习站

从零开始,用命令行认识和管理网络 · 面向 Linux 初学者

目录

  1. 先认识命令行
  2. 看看网络状态:ip / ping / ss
  3. 用 nmcli 管连接
  4. DNS 与域名:dig / nslookup
  5. 传数据:curl / wget
  6. 常用命令小抄

① 先认识命令行

终端(Terminal)是一个让你「用文字操作电脑」的窗口。你输入命令,回车,电脑执行并回显结果。它没有鼠标和按钮,但足够快、可脚本化、可远程使用。

打开终端后,你看到的一行形如 user@host:~$ 的东西叫「提示符」,其中 $ 后面才是你输入命令的地方。

提示:绝大多数命令都带 --help,想看某命令怎么用,先敲 命令 --help。

② 看看网络状态:ip / ping / ss

先学会「看」网络,再学「改」网络。

ip — 看网卡和地址

ip addr          # 查看所有网卡和 IP 地址
ip route         # 查看路由表 / 默认网关
ip link          # 查看网卡是否 UP

在 ip addr 输出里,eth0/ens33 是有线网卡,wlan0/wlp3s0 是无线网卡;inet 192.168.1.10/24 就是这台机器的 IP。

ping — 测连通性

ping 8.8.8.8              # 测到公网的连通性
ping -c 4 nmcli.net       # 只发 4 个包(Linux)

看到 0% packet loss 就是通;一直超时(timeout)就是不通,多半是网线、WiFi 或网关问题。

ss — 看端口和连接

ss -tuln        # 看本机监听的 TCP/UDP 端口
ss -tn          # 看已建立的 TCP 连接

③ 用 nmcli 管连接

NetworkManager 是大多数 Linux 桌面和服务器发行版默认的网络管理器,nmcli 是它的命令行入口。完整命令表见 nmcli 速查。

连接 WiFi

nmcli device wifi list                            # 扫描
nmcli device wifi connect MyWiFi password 12345678 # 连接

配置静态 IP

nmcli connection modify eth0 ipv4.addresses 192.168.1.10/24
nmcli connection modify eth0 ipv4.gateway 192.168.1.1
nmcli connection modify eth0 ipv4.method manual
nmcli connection up eth0                           # 重新激活生效

改回自动获取(DHCP)

nmcli connection modify eth0 ipv4.method auto
nmcli connection up eth0

小技巧:connection 可简写为 con,device 可简写为 dev,modify 可简写为 mod。

④ DNS 与域名:dig / nslookup

域名(如 nmcli.net)最终要解析成 IP 才能通信,这个「翻译」由 DNS 完成。

dig nmcli.net                 # 查域名的 A 记录(IP)
dig +short nmcli.net          # 只显示结果
dig nmcli.net MX              # 查邮件记录
nslookup nmcli.net            # 更简单的查询

在 Linux 上 DNS 服务器配置在 /etc/resolv.conf;如果你用 NetworkManager,也可以用 nmcli con mod <名称> ipv4.dns "8.8.8.8" 来设置。

⑤ 传数据:curl / wget

curl https://example.com           # 请求并打印网页内容
curl -I https://example.com        # 只看响应头
curl -o page.html https://example.com  # 下载保存为文件
wget https://example.com/file.zip  # 下载文件

curl 是「万能网络请求工具」,调 API、测接口、下载文件都靠它,值得花时间熟悉。

⑥ 常用命令小抄

命令作用
ip addr查看 IP 地址
ping -c 4 主机测连通性
ss -tuln查看监听端口
nmcli dev status查看设备状态
nmcli dev wifi list扫描 WiFi
nmcli con show查看连接
dig 域名查 DNS
curl -I 网址看响应头

想继续深入?下一站建议学 traceroute、tcpdump、iptables(或 nftables)。