跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash

Ubuntu 网络环境配置完整教程

档提供 Ubuntu 网络环境配置的完整指南,涵盖基础概念、网络状态查看、静态与动态 IP 配置(Netplan 及临时命令)、DNS 设置(临时与永久)、代理配置(终端与系统级)以及常用故障排查命令。内容适配 Ubuntu 18.04 至 22.04 版本,帮助管理员快速完成网络设置与问题定位。

黑客发布于 2026/3/27更新于 2026/10/2199 浏览

一、先了解基础概念

  • 网卡命名:Ubuntu 新版本网卡名一般是 ens33/enp0s3(物理机)、eth0(部分虚拟机),可通过 ip addr 查看
  • 配置方式:
    • 临时配置:重启后失效(测试用)
    • 永久配置:修改配置文件(生产环境用)
  • 网络管理工具:
    • nmcli:命令行管理网络(推荐)
    • netplan:Ubuntu 18.04+ 官方推荐的配置工具
    • /etc/network/interfaces:旧版配置方式(部分系统仍兼容)

二、查看当前网络状态

先确认网卡名称、IP、网关等信息,方便后续配置:

# 查看所有网卡及 IP 信息(最常用)
ip addr
# 查看网络连接状态
nmcli connection show
# 查看网关和路由
ip route
# 测试网络连通性
ping -c 4 www.baidu.com
# 测试外网
ping -c 4 192.168.1.1
# 测试网关

三、基础网络配置(静态 IP/动态 IP)

方式 1:用 netplan 配置(Ubuntu 18.04+ 推荐)

netplan 是 Ubuntu 主流配置方式,配置文件在 /etc/netplan/ 目录下(文件后缀为 .yaml)。

步骤 1:编辑 netplan 配置文件
# 编辑配置文件(文件名可能是 00-installer-config.yaml 或 50-cloud-init.yaml)
sudo nano /etc/netplan/00-installer-config.yaml
步骤 2:配置内容(二选一)
  • 动态 IP(DHCP,自动获取):
network:
  ethernets:
    ens33: # 替换成你的网卡名
      dhcp4: true # 开启 DHCPv4
      dhcp6: false # 关闭 DHCPv6(按需)
      version: 2
  • 静态 IP(固定 IP,生产环境常用):

  
     
        
       [] 
        
      
      
      
      
      
         [, ] 
       
network:
ethernets:
ens33:
# 替换成你的网卡名
dhcp4:
false
# 关闭 DHCP
addresses:
192.168
.1
.100
/24
# IP 地址 + 子网掩码
gateway4:
192.168
.1
.1
# 网关(Ubuntu 22.04 用 routes 替代 gateway4)
# Ubuntu 22.04 网关写法:
# routes:
# - to: 0.0.0.0/0
# via: 192.168.1.1
nameservers:
addresses:
8.8
.8
.8
114.114
.114
.114
# DNS 服务器
version:
2
步骤 3:应用配置(生效)
# 测试配置文件语法(无报错再应用)
sudo netplan try
# 应用配置(立即生效,无需重启网卡)
sudo netplan apply

方式 2:临时配置(重启失效,测试用)

适合快速测试 IP 是否可用,无需修改配置文件:

# 临时设置 IP 和子网掩码
sudo ip addr add 192.168.1.100/24 dev ens33
# 临时设置网关
sudo ip route add default via 192.168.1.1 dev ens33
# 清空临时 IP
sudo ip addr del 192.168.1.100/24 dev ens33

四、DNS 配置(独立设置)

如果仅需修改 DNS,无需改 IP 配置,可直接操作:

1. 临时修改 DNS(重启失效)

# 编辑 resolv.conf(临时生效)
sudo nano /etc/resolv.conf
# 添加以下内容
nameserver 8.8.8.8 # 谷歌 DNS
nameserver 114.114.114.114 # 国内 DNS

2. 永久修改 DNS(推荐)

Ubuntu 部分版本会自动覆盖 resolv.conf,需通过 systemd-resolved 配置:

# 编辑 resolved 配置文件
sudo nano /etc/systemd/resolved.conf
# 取消注释并修改以下内容
[Resolve]
DNS=8.8.8.8 114.114.114.114
# FallbackDNS=
# Domains=
# LLMRR=no
# MulticastDNS=no
# DNSSEC=no
# DNSOverTLS=no
# Cache=no-negative
# DNSStubListener=yes
# ReadEtcHosts=yes
# 重启服务生效
sudo systemctl restart systemd-resolved
# 验证 DNS
nslookup www.baidu.com

五、代理配置(终端/系统级)

1. 终端临时代理(仅当前会话生效)

# 设置 http/https 代理
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
# 设置 socks5 代理
export ALL_PROXY=socks5://127.0.0.1:7890
# 取消代理
unset http_proxy https_proxy ALL_PROXY

2. 系统级永久代理(所有用户生效)

# 编辑环境变量文件
sudo nano /etc/profile
# 在文件末尾添加代理配置
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export no_proxy=localhost,127.0.0.1,192.168.0.0/16
# 生效配置
source /etc/profile

六、网络故障排查(常用命令)

配置后不通?用这些命令快速定位问题:

# 重启网络服务(解决大部分配置生效问题)
sudo systemctl restart NetworkManager
# 查看网卡是否启用
nmcli device status
# 启用/禁用网卡
sudo nmcli device connect ens33 # 启用
sudo nmcli device disconnect ens33 # 禁用
# 查看端口占用(排查端口冲突)
sudo netstat -tulpn
# 查看防火墙状态(是否拦截端口)
sudo ufw status
sudo ufw disable # 临时关闭防火墙测试

目录

  1. 一、先了解基础概念
  2. 二、查看当前网络状态
  3. 查看所有网卡及 IP 信息(最常用)
  4. 查看网络连接状态
  5. 查看网关和路由
  6. 测试网络连通性
  7. 测试外网
  8. 测试网关
  9. 三、基础网络配置(静态 IP/动态 IP)
  10. 方式 1:用 netplan 配置(Ubuntu 18.04+ 推荐)
  11. 步骤 1:编辑 netplan 配置文件
  12. 编辑配置文件(文件名可能是 00-installer-config.yaml 或 50-cloud-init.yaml)
  13. 步骤 2:配置内容(二选一)
  14. 步骤 3:应用配置(生效)
  15. 测试配置文件语法(无报错再应用)
  16. 应用配置(立即生效,无需重启网卡)
  17. 方式 2:临时配置(重启失效,测试用)
  18. 临时设置 IP 和子网掩码
  19. 临时设置网关
  20. 清空临时 IP
  21. 四、DNS 配置(独立设置)
  22. 1. 临时修改 DNS(重启失效)
  23. 编辑 resolv.conf(临时生效)
  24. 添加以下内容
  25. 2. 永久修改 DNS(推荐)
  26. 编辑 resolved 配置文件
  27. 取消注释并修改以下内容
  28. FallbackDNS=
  29. Domains=
  30. LLMRR=no
  31. MulticastDNS=no
  32. DNSSEC=no
  33. DNSOverTLS=no
  34. Cache=no-negative
  35. DNSStubListener=yes
  36. ReadEtcHosts=yes
  37. 重启服务生效
  38. 验证 DNS
  39. 五、代理配置(终端/系统级)
  40. 1. 终端临时代理(仅当前会话生效)
  41. 设置 http/https 代理
  42. 设置 socks5 代理
  43. 取消代理
  44. 2. 系统级永久代理(所有用户生效)
  45. 编辑环境变量文件
  46. 在文件末尾添加代理配置
  47. 生效配置
  48. 六、网络故障排查(常用命令)
  49. 重启网络服务(解决大部分配置生效问题)
  50. 查看网卡是否启用
  51. 启用/禁用网卡
  52. 查看端口占用(排查端口冲突)
  53. 查看防火墙状态(是否拦截端口)

更多推荐文章

查看全部
  • 二分查找应用:寻找旋转排序数组最小值与缺失数字
  • C 语言快速排序详解:从基础到非递归实现
  • 本地部署 Wan2.1 视频生成模型及远程访问指南
  • QNN 框架实战:LLaMA-7B 模型部署到 Android 环境搭建与优化
  • 第六届人工智能与工业技术应用国际学术会议(AIITA 2026)
  • SpringBoot+Vue 家政服务平台设计与实现
  • MBA 教务管理实战:订单支付后自动转化学籍与课时卡
  • 知网 AIGC 检测原理及降低 AI 疑似度策略
  • NASA 前工程师打造通用机器人大脑,FieldAI 获巨头投资估值 20 亿
  • Fooocus 部署实战:本地环境配置与云平台方案对比
  • OpenTenBase 企业级分布式 HTAP 数据库部署实战
  • Web3 技术解析:下一代互联网范式与普通人应用指南
  • 面试高频缓存算法:LRU 与 LFU 原理及实现
  • 如何入门 AI 行业,成为人工智能产品经理
  • C++ 入门:引用、内联函数与 nullptr 详解
  • LeetCode 88:合并两个有序数组(C 语言双指针详解)
  • MaxKB v1.4.0 发布:支持 OpenAI、Ollama 和本地向量模型
  • 基于 Leaflet 和天地图实现长沙免费运动场所 WebGIS 可视化
  • 自然语言处理在医疗健康领域的应用与实战
  • Linux 网络编程基础:套接字

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online