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

Linux网络配置全攻略:IP、路由与双机通信

一、IP地址基础

  1. IPv4地址

    • 表示方法:点分十进制(如 192.168.1.1

    • 结构

      • 网络位:标识所属网络
      • 主机位:标识网络内具体设备
    • 分类标准

      类别范围网络位长度
      A0.0.0.0 ~ 127.255.255.255/8
      B128.0.0.0 ~ 191.255.255.255/16
      C192.0.0.0 ~ 223.255.255.255/24
      D224.0.0.0 ~ 239.255.255.255(组播)
      E240.0.0.0 ~ 255.255.255.255(保留)
    • 私有地址范围

      • A类:10.0.0.0 - 10.255.255.255
      • B类:172.16.0.0 - 172.31.255.255
      • C类:192.168.0.0 - 192.168.255.255
  2. IPv6地址

    • 格式:128位,8组16进制数(如 2001:db8:0:1::c000:207

    • 压缩规则

      • 连续全0组可省略为 ::(仅限一次使用)
      • 每组前导0可省略(如 09C09C0
    • 示例

      FC00:0000:130F:0000:0000:09C0:876A:130B  # 完整格式
      FC00:0:130F::09C0:876A:130B              # 压缩格式
      

二、网卡配置与管理

配置文件路径
/etc/sysconfig/network-scripts/ifcfg-ens33
关键配置参数
TYPE=Ethernet        # 网卡类型(以太网)
BOOTPROTO=none       # 配置方式:none/static(静态) 或 dhcp(动态)
NAME=ens33           # 连接名称
UUID=...             # 唯一标识
DEVICE=ens33         # 设备名称
ONBOOT=yes           # 开机自启
IPADDR=172.16.30.20  # IPv4地址
PREFIX=24            # 子网掩码(等价于NETMASK=255.255.255.0)
GATEWAY=172.16.30.1  # 网关
DNS1=172.16.30.254   # DNS服务器
命令行工具
  1. 图形化配置

    nmtui
    
  2. 查看连接

    nmcli connection show
    
  3. 修改IPv4配置

    nmcli connection modify ens33 \ipv4.addresses 172.16.30.200/24 \ipv4.gateway 172.16.30.2 \ipv4.dns 172.16.30.254 \ipv4.method manual \connection.autoconnect yes  # 必须参数
    
  4. 激活连接

    nmcli connection up ens33
    systemctl restart network   # 重启网络服务
    

三、网卡操作指南

删除网卡
  1. 移除配置文件:

    rm -f /etc/sysconfig/network-scripts/ifcfg-ens33
    
  2. 删除网络连接:

    nmcli connection delete ens33
    
  3. 虚拟机中移除网卡。

添加网卡
  1. 虚拟机添加新网卡(仅主机模式)。

  2. 创建新连接:

    nmcli connection add con-name ens33 ifname ens33 type ethernet
    
  3. 配置IP并激活:

    nmcli connection modify ens33 \ipv4.addresses 172.16.30.30/24 \ipv4.gateway 172.16.30.1 \ipv4.dns 172.16.30.254 \ipv4.method manual \connection.autoconnect yes  # 必须参数
    nmcli connection up ens33
    

四、IPv6配置

nmcli connection modify ens33 \ipv6.addresses "2001:db8:0:1::c000:207/64" \ipv6.gateway "2001:db8:0:1::1" \ipv6.method manual \connection.autoconnect yes  # 必须参数
nmcli connection up ens33

五、路由管理

IP转发控制
# 检查转发状态(1=开启, 0=关闭)
cat /proc/sys/net/ipv4/ip_forward# 永久开启:
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p  # 生效配置
静态路由命令
类型添加命令删除命令
目标主机route add -host <IP> gw <网关> dev <接口>route del -host <IP> gw <网关> dev <接口>
目标网络(带网关)route add -net <网段> netmask <掩码> gw <网关> dev <接口>route del -net <网段> netmask <掩码>
目标网络(直连)route add -net <网段> netmask <掩码> dev <接口>route del -net <网段> netmask <掩码>

关键规则

  1. 目标为主机时必须指定网关
  2. 目标为网段时可省略网关(直连路由)

示例

# 添加主机路由
route add -host 172.16.40.10 gw 172.16.30.254 dev ens33# 添加网络路由
route add -net 172.16.30.0 netmask 255.255.255.0 gw 172.16.20.1 dev ens33

六、实验:双主机通信

主机配置
主机IP地址子网掩码网关模式
chenyu1172.16.30.10255.255.255.0172.16.30.254仅主机模式
chenyu2172.16.40.10255.255.255.0172.16.40.254仅主机模式
操作步骤
  1. 配置IP

    在这里插入图片描述

在这里插入图片描述

# YDH:
nmcli connection modify ens33 \ipv4.addresses 172.16.30.10/24 \ipv4.gateway 172.16.30.254 \ipv4.method manual# ydh2:
nmcli connection modify ens33 \ipv4.addresses 172.16.40.10/24 \ipv4.gateway 172.16.40.254 \ipv4.method manual
  1. 添加路由**:

在这里插入图片描述

在这里插入图片描述

# 在YDH上:
route add -net 172.16.40.0 netmask 255.255.255.0 gw 172.16.30.254 dev ens33# 在ydh2上:
route add -net 172.16.30.0 netmask 255.255.255.0 gw 172.16.40.254 dev ens33
  1. 激活连接

    在这里插入图片描述

在这里插入图片描述

nmcli connection up ens33  # 两台主机均执行
  1. 验证通信

    在这里插入图片描述

    ping 172.16.40.10  # 从YDH执行
    
http://www.dtcms.com/a/297898.html

相关文章:

  • 北京-4年功能测试2年空窗-报培训班学测开-第六十天-准备项目中
  • 图的遍历:深度优先与广度优先
  • SpringBoot学习路径二--Spring Boot自动配置原理深度解析
  • Qt 状态机框架:复杂交互逻辑的处理
  • R 语言绘制六种精美热图:转录组数据可视化实践(基于 pheatmap 包)
  • 从零开始学习Dify-数据库数据可视化(五)
  • java的设计模式及代理模式
  • 负载均衡:提升业务性能的关键技术
  • Zabbix告警系统集成指南:从钉钉机器人到网易邮件的全流程配置
  • pytest-html 优势及与其他插件对比
  • 自动驾驶领域中的Python机器学习
  • VLA:自动驾驶的“新大脑”?
  • npm init vite-app runoob-vue3-test2 ,npm init vue@latest,指令区别
  • C语言第 9 天学习笔记:数组(二维数组与字符数组)
  • Java-Properties类和properties文件详解
  • 同声传译新突破!字节跳动发布 Seed LiveInterpret 2.0
  • 深入探索嵌入式仿真教学:以酒精测试仪实验为例的高效学习实践
  • C++常见面试题之一
  • win11平台上mysql 数据库迁移
  • 【C#补全计划:类和对象(七)—— 重写虚方法】
  • CMOS知识点 双阱工艺 三阱工艺
  • 大数据中心——解读60页IDC云数据中心机房运维服务解决方案【附全文阅读】
  • 【优选算法】链表
  • 2025.7.25 测试 总结
  • C/C++---I/O性能优化
  • ISAAC ROS 在Jetson Orin NX上的部署
  • 自动化UI测试工具TestComplete的AI双引擎:即时数据集 + 自愈测试
  • BGP负载均衡-9
  • C#观察者模式示例代码
  • Qt 拔网线等情况下收不到disconnected()信号