linux下netplan的使用
阅读数:99 评论数:0
跳转到新版页面分类
Linux
正文
一、子网掩码
它用于划分 IP 地址,使其能够区分网络部分和主机部分,从而实现网络的子网划分和管理。
1、区分网络地址和主机地址
- 子网掩码将一个 IP 地址分为两部分:网络部分和主机部分。
- 网络部分用于标识特定的网络,主机部分用于标识网络中的具体设备。
2、子网划分
- 子网掩码允许网络管理员将一个大的网络划分为多个较小的子网,从而提高网络的管理效率和安全性。
- 每个子网可以有自己的广播域和路由策略。
3、确定网络范围
- 子网掩码帮助确定一个网络的有效 IP 地址范围。
- 通过子网掩码,可以计算出网络地址、广播地址以及可用的主机地址范围。
4、示例
-
子网1:192.168.1.0/25
- 网络地址:192.168.1.0
- 广播地址:192.168.1.127
- 可用主机地址:192.168.1.1 到 192.168.1.126
-
子网2:192.168.1.128/25
- 网络地址:192.168.1.128
- 广播地址:192.168.1.255
- 可用主机地址:192.168.1.129 到 192.168.1.254
通过这种方式,你可以有效地管理和分配 IP 地址,减少广播域,提高网络性能和安全性。
二、路由
1、在routes字段中,每个路由条目可以包含以下参数:
在 routes
字段中,每个路由条目可以包含以下参数:
-
to
:目标网络或主机的 IP 地址和子网掩码。例如,192.168.2.0/24
表示目标网络为192.168.2.0
,子网掩码为255.255.255.0
。你也可以指定单个主机,例如192.168.2.1/32
。 -
via
:下一跳网关的 IP 地址。数据包将通过这个网关转发到目标网络。例如,192.168.1.1
。 -
metric
(可选):路由的度量值,用于确定路由的优先级。度量值越低,优先级越高。默认值通常为 100。 -
on-link
(可选):布尔值,指定目标是否被认为是直接连接的(即使它实际上不是)。这在某些特殊情况下可能有用。 -
table
(可选):路由表的编号或名称,用于高级路由策略。 -
scope
(可选):指定路由的范围,可以是global
、link
或host
。 -
type
(可选):指定路由的类型,可以是unicast
、local
、broadcast
、multicast
、throw
、unreachable
、prohibit
、blackhole
或nat
。
2、示例
(1)基本静态路由
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.10/24
routes:
- to: 192.168.2.0/24
via: 192.168.1.1
(2)多个静态路由
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.10/24
routes:
- to: 192.168.2.0/24
via: 192.168.1.1
metric: 100
- to: 192.168.3.0/24
via: 192.168.1.2
metric: 200
(3)高级路由
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.10/24
routes:
- to: 192.168.2.0/24
via: 192.168.1.1
metric: 100
on-link: true
table: 100
scope: global
type: unicast
三、routing-policy
在 Netplan 中,routing-policy
字段用于配置高级路由策略(Policy-Based Routing, PBR)。PBR 允许你基于源地址、目的地址、输入接口等条件来选择不同的路由表,从而实现更灵活的路由控制。
1、字段
在 routing-policy
字段中,每个策略条目可以包含以下参数:
from
(可选):指定源地址或源网络。例如,192.168.1.0/24
表示从192.168.1.0
到192.168.1.255
的所有地址。to
(可选):指定目的地址或目的网络。例如,192.168.2.0/24
表示到192.168.2.0
到192.168.2.255
的所有地址。table
(必选):指定路由表的编号或名称。这个表将用于匹配该策略的流量。priority
(可选):指定策略的优先级。优先级越低,优先级越高。默认优先级通常为 32767。mark
(可选):指定数据包标记,用于流量分类。type
(可选):指定策略的类型,可以是unicast
、local
等。
2、示例
(1)基于源地址的路由策略
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.10/24
routes:
- to: 192.168.2.0/24
via: 192.168.1.1
table: 100
routing-policy:
- from: 192.168.1.0/24
table: 100
priority: 100
在这个示例中:
- 定义了一条到
192.168.2.0/24
的路由,通过网关192.168.1.1
,使用路由表 100。 - 配置了一个路由策略,指定从
192.168.1.0/24
源地址范围内的流量使用路由表 100,优先级为 100。
(2)基于目的地址的路由策略
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.10/24
routes:
- to: 192.168.3.0/24
via: 192.168.1.1
table: 200
routing-policy:
- to: 192.168.3.0/24
table: 200
priority: 200
在这个示例中:
- 定义了一条到
192.168.3.0/24
的路由,通过网关192.168.1.1
,使用路由表 200。 - 配置了一个路由策略,指定到
192.168.3.0/24
目的地址范围内的流量使用路由表 200,优先级为 200。