Linux网络管理与IP配置实验指南
IPv4 核心概念
1. 地址结构
- 网络位:标识设备所属网络
- 主机位:标识网络中的具体设备
2. IPv4 分类
分类 |
范围 |
网络位长度 |
私有地址范围 |
A类 |
0.0.0.0 ~ 127.255.255.255 |
/8 |
10.0.0.0 ~ 10.255.255.255 |
B类 |
128.0.0.0 ~ 191.255.255.255 |
/16 |
172.16.0.0 ~ 172.31.255.255 |
C类 |
192.0.0.0 ~ 223.255.255.255 |
/24 |
192.168.0.0 ~ 192.168.255.255 |
D类 |
224.0.0.0 ~ 239.255.255.255 |
(组播) |
无私有地址 |
E类 |
240.0.0.0 ~ 255.255.255.255 |
(保留) |
无私有地址 |
Linux 网络配置
1. 配置文件路径
复制代码
/etc/sysconfig/network-scripts/ifcfg-ens33
2. 关键配置参数
复制代码
TYPE=Ethernet # 网卡类型:以太网
BOOTPROTO=none # 配置方式:none/static(静态) 或 dhcp(动态)
NAME=ens33 # 网络连接名称
UUID=78fae162-... # 网卡唯一标识
DEVICE=ens33 # 设备名称
ONBOOT=yes # 开机自启(yes/no)
IPADDR=172.16.30.20 # IPv4 地址
PREFIX=24 # 子网掩码(等同于NETMASK=255.255.255.0)
GATEWAY=172.16.30.1 # 默认网关
DNS1=172.16.30.254 # DNS服务器
3. 配置生效命令
复制代码
systemctl restart network # 重启网络服务
nmcli connection up ens33 # 激活指定连接
命令行操作(nmcli)
1. 查看网络连接
复制代码
nmcli connection show # 列出所有网络连接
2. 修改 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
3. 添加新网络连接
复制代码
# 添加连接(以ens33为例)
nmcli connection add con-name ens33 ifname ens33 type ethernet
# 配置IPv4并激活
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
4. 删除网络配置
复制代码
rm -rf /etc/sysconfig/network-scripts/ifcfg-ens33 # 删除配置文件
nmcli connection delete ens33 # 删除网络连接
IPv6 配置
1. 地址格式
- 128位,8组16进制数(例如
2001:db8:0:1::c000:207/64
)
- 压缩规则 :连续0可简写为
::
(仅限一次)
示例:
FC00:0000:130F:0000:0000:09C0:876A:130B
→ FC00:0:130F::09C0:876A:130B
2. 命令行配置
复制代码
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
路由管理
1. 启用 IP 转发
复制代码
# 查看ip转发是否开启
cat /proc/sys/net/ipv4/ip_forward #查询出的值是1,说明已经开启了IP转发,是0,说明未开启
# 临时启用
echo 1 > /proc/sys/net/ipv4/ip_forward
# 永久启用(修改配置文件)
vim /etc/sysctl.conf # 添加:net.ipv4.ip_forward = 1
sysctl -p /etc/sysctl.conf # 加载配置
2. 静态路由操作
类型 |
命令格式 |
添加主机路由 |
route add -host <目标IP> gw <网关IP> dev <接口> (例:route add -host 172.16.40.10 gw 172.16.30.254 dev ens33 ) |
添加网络路由 |
route add -net <目标网段> netmask <子网掩码> gw <网关IP> dev <接口> (例:route add -net 172.16.30.0 netmask 255.255.255.0 gw 172.16.20.1 dev ens33 ) |
删除主机路由 |
route del -host <目标IP> gw <网关IP> dev <接口> (例:route del -host 172.16.40.10 gw 172.16.30.254 dev ens33 ) |
删除网络路由 |
route del -net <目标网段> netmask <子网掩码> gw <网关IP> dev <接口> (例:route del -net 172.16.30.0 netmask 255.255.255.0 gw 172.16.20.1 dev ens33 ) |
注意:目标为主机时必须指定网关;目标为网段时可省略网关(直连路由)
实验报告:
1. 主机配置
主机 |
IP地址 |
子网掩码 |
网关 |
yanyvhang1 |
172.16.30.10 |
255.255.255.0 |
172.16.30.254 |
yanyvhang2 |
172.16.40.10 |
255.255.255.0 |
172.16.40.254 |
2. 配置步骤
复制代码
# 在 yanyvhang1 上执行:
nmcli connection modify ens33 \
ipv4.addresses 172.16.30.10/24 \
ipv4.gateway 172.16.30.254 \
ipv4.method manual \
connection.autoconnect yes
nmcli connection up ens33
# 在 yanyvhang2 上执行:
nmcli connection modify ens33 \
ipv4.addresses 172.16.40.10/24 \
ipv4.gateway 172.16.40.254 \
ipv4.method manual \
connection.autoconnect yes
nmcli connection up ens33
3. 添加路由实现通信
复制代码
# 方案:通过中间路由器(假设IP为172.16.30.254/172.16.40.254)
# 在路由器上添加路由:
route add -net 172.16.40.0 netmask 255.255.255.0 dev ens33 # 指向yanyvhang2所在网段
route add -net 172.16.30.0 netmask 255.255.255.0 dev ens33 # 指向yanyvhang1所在网段
# 验证连通性(从 yanyvhang1 ping yanyvhnag2):
ping 172.16.40.10
关键点 :确保中间路由器的 IP 转发已启用(net.ipv4.ip_forward=1
)