当前位置: 首页 > news >正文

Linux IPV4/IPV6配置终极指南

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 1、配置固定IPV4
    • 1.1 使用nmcli
      • 1.1.1 查看当前网络接口
      • 1.1.2 删除现有连接(可选)
      • 1.1.3 创建新的静态 IP 连接
      • 1.1.4 启用连接
      • 1.1.5 验证配置
    • 1.2 手动编辑网卡配置文件
      • 1.2.1 进入网络配置目录
      • 1.2.2 编辑网卡配置文件
      • 1.2.3 重启网络服务
      • 1.2.4 验证配置
    • 1.3 使用nmtui
    • 1.4 使用命令临时添加
      • 1.4.1 临时添加 IPv4 地址
      • 1.4.2 临时添加默认网关
      • 1.4.3 临时添加 DNS(可选)
      • 1.4.4 测试网络连通性
    • 1.5 验证网络配置
  • 2、配置带vlan的固定IPV4
    • 2.1 使用nmcli
      • 2.1.1 加载 802.1q VLAN 模块
      • 2.1.2 创建 VLAN 接口
      • 2.1.3 启用 VLAN 接口
      • 2.1.4 检查配置
    • 2.2 手动修改网络配置文件
      • 2.2.1 创建 VLAN 配置文件
      • 2.2.2 重启网络服务
      • 2.2.3 检查 VLAN 接口
    • 2.3 验证 VLAN 配置
  • 3、配置IPV6
    • 3.1 使用nmcli配置静态 IPv6(推荐)
      • 3.1.1 查看当前网络接口
      • 3.1.2 删除现有连接(可选)
      • 3.1.3 添加静态 IPv6 地址
      • 3.1.4 启用连接
      • 3.1.5 验证配置
    • 3.2 手动编辑网卡配置文件
      • 3.2.1 进入网络配置目录
      • 3.2.2 编辑网卡配置文件
      • 3.2.3 重启网络服务
      • 3.2.4 验证
    • 3.3 临时添加 IPv6 地址(重启失效)
      • 1. 临时添加 IPv6 地址
      • 2. 临时添加 IPv6 网关
      • 3. 临时添加 DNSv6
      • 4. 验证
    • 3.4 启用 IPv6 自动配置
      • 3.4.1 使用 nmcli启用自动配置
      • 3.4.2 启用内核 IPv6 自动配置(SLAAC)
      • 3.4.3 使用 DHCPv6 客户端


1、配置固定IPV4

1.1 使用nmcli

1.1.1 查看当前网络接口

nmcli device status

找到要配置的网卡名称(如 eth0ens33)。

1.1.2 删除现有连接(可选)

如果网卡已有自动 DHCP 配置,可以先删除:

sudo nmcli connection delete "Wired connection 1"  # 替换为你的连接名

1.1.3 创建新的静态 IP 连接

假设:

  • 网卡:eth0
  • IP 地址:192.168.1.100/24
  • 网关:192.168.1.1
  • DNS:8.8.8.88.8.4.4
sudo nmcli connection add type ethernet con-name eth0-static ifname eth0 \ipv4.addresses 192.168.1.100/24 \ipv4.gateway 192.168.1.1 \ipv4.dns "8.8.8.8,8.8.4.4" \ipv4.method manual \autoconnect yes

1.1.4 启用连接

sudo nmcli connection up eth0-static

1.1.5 验证配置

ip addr show eth0
ping 8.8.8.8

1.2 手动编辑网卡配置文件

1.2.1 进入网络配置目录

cd /etc/sysconfig/network-scripts/

1.2.2 编辑网卡配置文件

假设网卡是 eth0

sudo vi ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4

1.2.3 重启网络服务

sudo systemctl restart network

1.2.4 验证配置

ip addr show eth0
cat /etc/resolv.conf  # 检查DNS

1.3 使用nmtui

如果喜欢交互式配置,可以运行:

sudo nmtui

选择:

  1. Edit a connection → 选择网卡 → Edit
  2. 设置:
    • IPv4 Configuration: Manual
    • Addresses: 192.168.1.100/24
    • Gateway: 192.168.1.1
    • DNS: 8.8.8.8,8.8.4.4
  3. 保存并退出,然后激活连接。

1.4 使用命令临时添加

1.4.1 临时添加 IPv4 地址

语法

sudo ip addr add <IP地址>/<子网掩码位数> dev <网卡名称>

示例

假设:

  • 网卡:eth0
  • IP:192.168.1.100/24(子网掩码 255.255.255.0

运行:

sudo ip addr add 192.168.1.100/24 dev eth0

验证

ip addr show eth0

输出应包含:

inet 192.168.1.100/24 scope global secondary eth0

1.4.2 临时添加默认网关

如果还需要临时设置网关:

sudo ip route add default via <网关IP> dev <网卡名称>

示例

sudo ip route add default via 192.168.1.1 dev eth0

验证

ip route show

输出应包含:

default via 192.168.1.1 dev eth0

1.4.3 临时添加 DNS(可选)

修改 /etc/resolv.conf(重启后可能被覆盖):

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 8.8.4.4" | sudo tee -a /etc/resolv.conf

验证

cat /etc/resolv.conf

1.4.4 测试网络连通性

ping 8.8.8.8  # 测试外网
ping 192.168.1.1  # 测试网关

1.5 验证网络配置

命令作用
ip addr show eth0检查IP是否生效
ping 8.8.8.8测试外网连通性
route -n查看网关路由
cat /etc/resolv.conf检查DNS配置

2、配置带vlan的固定IPV4

2.1 使用nmcli

2.1.1 加载 802.1q VLAN 模块

确保内核支持 VLAN:

sudo modprobe 8021q

永久生效(可选):

echo "8021q" | sudo tee -a /etc/modules-load.d/vlan.conf

2.1.2 创建 VLAN 接口

假设物理网卡是 eth0,VLAN ID 是 10,IP 是 192.168.10.100/24,网关是 192.168.10.1

sudo nmcli connection add type vlan con-name eth0.10 dev eth0 id 10 ip4 192.168.10.100/24 gw4 192.168.10.1

2.1.3 启用 VLAN 接口

sudo nmcli connection up eth0.10

2.1.4 检查配置

ip addr show eth0.10
ping 192.168.10.1

2.2 手动修改网络配置文件

2.2.1 创建 VLAN 配置文件

假设物理网卡是 eth0,VLAN ID 是 10,IP 是 192.168.10.100/24,网关是 192.168.10.1

进入 /etc/sysconfig/network-scripts/

cd /etc/sysconfig/network-scripts/

创建 VLAN 配置文件 ifcfg-eth0.10

sudo vi ifcfg-eth0.10

写入以下内容:

DEVICE=eth0.10
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.10.100
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
VLAN=yes
PHYSDEV=eth0 # 物理网卡
DEFROUTE=yes # 如果不存在默认路由, 加上
METRIC=101 # 如果存在默认路由, 加上

2.2.2 重启网络服务

sudo systemctl restart network

2.2.3 检查 VLAN 接口

ip addr show eth0.10
ping 192.168.10.1

2.3 验证 VLAN 配置

  • 查看 VLAN 接口

    ip link show
    
  • 检查路由

    ip route
    
  • 测试连通性

    ping 192.168.10.1
    

3、配置IPV6

3.1 使用nmcli配置静态 IPv6(推荐)

3.1.1 查看当前网络接口

nmcli device status

找到要配置的网卡(如 eth0ens33)。

3.1.2 删除现有连接(可选)

如果网卡已有自动配置(如 DHCPv6),可先删除:

sudo nmcli connection delete "Wired connection 1"  # 替换为你的连接名

3.1.3 添加静态 IPv6 地址

假设:

  • 网卡:eth0
  • IPv6 地址:2001:db8::100/64
  • IPv6 网关:2001:db8::1
  • DNSv6:2001:4860:4860::8888(Google DNS)

运行:

sudo nmcli connection add type ethernet con-name eth0-ipv6 ifname eth0 \ipv6.addresses 2001:db8::100/64 \ipv6.gateway 2001:db8::1 \ipv6.dns "2001:4860:4860::8888" \ipv6.method manual \autoconnect yes

3.1.4 启用连接

sudo nmcli connection up eth0-ipv6

3.1.5 验证配置

ip -6 addr show eth0
ping6 2001:4860:4860::8888

3.2 手动编辑网卡配置文件

3.2.1 进入网络配置目录

cd /etc/sysconfig/network-scripts/

3.2.2 编辑网卡配置文件

sudo vi ifcfg-eth0

添加或修改以下内容:

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
IPV6INIT=yes
IPV6ADDR=2001:db8::100/64
IPV6_DEFAULTGW=2001:db8::1
DNS1=2001:4860:4860::8888

3.2.3 重启网络服务

sudo systemctl restart network

3.2.4 验证

ip -6 route
ping6 2001:4860:4860::8888

3.3 临时添加 IPv6 地址(重启失效)

1. 临时添加 IPv6 地址

sudo ip -6 addr add 2001:db8::100/64 dev eth0

2. 临时添加 IPv6 网关

sudo ip -6 route add default via 2001:db8::1 dev eth0

3. 临时添加 DNSv6

echo "nameserver 2001:4860:4860::8888" | sudo tee -a /etc/resolv.conf

4. 验证

ip -6 addr show eth0
ping6 2001:4860:4860::8888

3.4 启用 IPv6 自动配置

3.4.1 使用 nmcli启用自动配置

sudo nmcli connection modify eth0 ipv6.method auto
sudo nmcli connection up eth0

3.4.2 启用内核 IPv6 自动配置(SLAAC)

1. 确保 IPv6 功能已启用

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=0
sudo sysctl -w net.ipv6.conf.eth0.disable_ipv6=0  # 替换为你的网卡名

2. 允许接收路由器通告(RA)

sudo sysctl -w net.ipv6.conf.eth0.accept_ra=2     # 2 表示接受 RA 并应用自动配置

3. 立即生效(无需重启)

sudo sysctl -p

4. 检查 IPv6 地址

ip -6 addr show eth0

3.4.3 使用 DHCPv6 客户端

如果网络支持 DHCPv6,可以手动运行 dhclient

sudo dhclient -6 eth0

检查获取的 IPv6 地址:

ip -6 addr show eth0
http://www.lryc.cn/news/575712.html

相关文章:

  • 解锁AI无限潜能!景联文科技数据产品矩阵再升级:多语言题库、海量语料、垂域代码库,全面赋能大模型训练
  • java解决超大二维矩阵数组引起的内存占用过大问题
  • 【redis使用场景——缓存——数据过期策略 】
  • 新手向:Neo4j的安装与使用
  • CTF:PHP 多关卡绕过挑战
  • Flink部署与应用——Flink架构概览
  • 国外开源客服系统chathoot部署,使用教程
  • 信息化系统流程管理模块,企业高价值资产的跨省/市运输审批流程的功能
  • 网络安全之SQL RCE漏洞
  • AI 口语陪练:教育领域的新变革​
  • AI智能体——OpenManus 源码学习
  • 使用 ReAct 框架在 Ollama 中实现本地代理(Agent)
  • Docker安装Mysql、配置文件挂载、修改Mysql编码
  • Python-7-读取/写入文件数据
  • Rust与Go:GAN实战对决
  • 合规型区块链RWA系统解决方案报告——机构资产数字化的终极武器
  • SQL语句在MySQL中的执行过程
  • python pyecharts 数据分析及可视化
  • Python 将文件夹中的所有文件打包成Zip压缩包
  • easyExcel导入多sheet的Excel,存在合并单元格、列不固定的情况
  • 超实用AI工具分享——ViiTor AI视频配音功能教程(附图文)
  • html 照片环 - 图片的动态3D环绕
  • 渗透实战:使用隐式转换覆盖toString的反射型xss
  • Linux 统一方式安装多版本 JDK 指南
  • python基于协同过滤的动漫推荐系统
  • CSP-J 2021 入门级 第一轮(初赛) 阅读程序(1)
  • CSMA/CD相关习题---谢希仁课后题
  • 数据分享:医学数据集-糖尿病数据集
  • Git 使用规范与命令使用场景详解
  • 与 AI 聊天更顺畅:cat_code.py