当前位置:   article > 正文

转载:Netplan配置示例-ubuntu17以来使用新的网络配置方式_netplan optional

netplan optional

以下是常见方案的示例Netplan配置的集合。如果您看不到某个场景或有一个场景可以做出贡献,请使用此页面底部的链接针对该文档提出带有示例的错误。谢谢!

组态

要配置netplan,请/etc/netplan/使用.yaml扩展名(例如/etc/netplan/config.yaml)保存配置文件,然后运行sudo netplan apply。此命令解析配置并将其应用于系统。写入磁盘的配置/etc/netplan/将在两次重启之间保持不变。

使用DHCP和静态寻址

要让名为“ enp3s0”的接口通过DHCP获取地址,请创建具有以下内容的YAML文件:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. enp3s0:
  6. dhcp4: true

要改为设置静态IP地址,请使用地址键,该键带有一个列表(IPv4或IPv6),地址以及子网前缀长度(例如/ 24)。也可以提供网关和DNS信息:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. enp3s0:
  6. addresses:
  7. - 10.10.10.2/24
  8. gateway4: 10.10.10.1
  9. nameservers:
  10. search: [mydomain, otherdomain]
  11. addresses: [10.10.10.1, 1.1.1.1]

使用DHCP连接多个接口

现在,许多系统都包含多个网络接口。服务器通常将需要连接到多个网络,并且尽管所有服务器都提供有效的网关,但它们可能仍要求到Internet的流量通过特定的接口。

通过为通过DHCP检索的路由指定度量标准,可以实现DHCP所需的精确路由,这将确保某些路由优先于其他路由。在此示例中,“ enred”优于“ engreen”,因为它具有较低的路由度量:

  1. network:
  2. version: 2
  3. ethernets:
  4. enred:
  5. dhcp4: yes
  6. dhcp4-overrides:
  7. route-metric: 100
  8. engreen:
  9. dhcp4: yes
  10. dhcp4-overrides:
  11. route-metric: 200

连接到开放的无线网络

Netplan轻松支持连接到开放的无线网络(该网络不受密码保护),只需要定义访问点即可:

  1. network:
  2. version: 2
  3. wifis:
  4. wl0:
  5. access-points:
  6. opennetwork: {}
  7. dhcp4: yes

连接到WPA个人无线网络

无线设备使用“ wifi”键,并与有线以太网设备共享相同的配置选项。还应指定无线接入点的名称和密码:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. wifis:
  5. wlp2s0b1:
  6. dhcp4: no
  7. dhcp6: no
  8. addresses: [192.168.0.21/24]
  9. gateway4: 192.168.0.1
  10. nameservers:
  11. addresses: [192.168.0.1, 8.8.8.8]
  12. access-points:
  13. "network_ssid_name":
  14. password: "**********"

连接到WPA Enterprise无线网络

查找使用WPA或WPA2 Enterprise保护的无线网络也很常见,这需要其他身份验证参数。

例如,如果使用WPA-EAP和TTLS保护网络安全:

  1. network:
  2. version: 2
  3. wifis:
  4. wl0:
  5. access-points:
  6. workplace:
  7. auth:
  8. key-management: eap
  9. method: ttls
  10. anonymous-identity: "@internal.example.com"
  11. identity: "joe@internal.example.com"
  12. password: "v3ryS3kr1t"
  13. dhcp4: yes

或者,如果使用WPA-EAP和TLS保护网络安全:

  1. network:
  2. version: 2
  3. wifis:
  4. wl0:
  5. access-points:
  6. university:
  7. auth:
  8. key-management: eap
  9. method: tls
  10. anonymous-identity: "@cust.example.com"
  11. identity: "cert-joe@cust.example.com"
  12. ca-certificate: /etc/ssl/cust-cacrt.pem
  13. client-certificate: /etc/ssl/cust-crt.pem
  14. client-key: /etc/ssl/cust-key.pem
  15. client-key-password: "d3cryptPr1v4t3K3y"
  16. dhcp4: yes

支持许多不同的加密模式。请参阅Netplan参考页。

在单个接口上使用多个地址

地址键可以获取要分配给接口的地址列表:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. enp3s0:
  6. addresses:
  7. - 10.100.1.38/24
  8. - 10.100.1.39/24
  9. gateway4: 10.100.1.1

不支持接口别名(例如eth0:0)。

通过多个网关使用多个地址

与上面的示例类似,具有多个地址的接口可以
配置有多个网关。

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. enp3s0:
  6. addresses:
  7. - 9.0.0.9/24
  8. - 10.0.0.10/24
  9. - 11.0.0.11/24
  10. #gateway4: # unset, since we configure routes below
  11. routes:
  12. - to: 0.0.0.0/0
  13. via: 9.0.0.1
  14. metric: 100
  15. - to: 0.0.0.0/0
  16. via: 10.0.0.1
  17. metric: 100
  18. - to: 0.0.0.0/0
  19. via: 11.0.0.1
  20. metric: 100

鉴于有多个地址,每个地址都有自己的网关,我们在此不指定gateway4,而是
使用子网的网关地址将单个路由配置为0.0.0.0/0(任何地方)。该metric值应进行调整,
以使路由按预期进行。

DHCP可用于接收接口的IP地址之一。在这种情况下,该地址的默认路由将
自动配置metric为100。作为,在下的条目的简写形式routesgateway4可以设置
为其中一个子网的网关地址。在这种情况下,可以从中省略该子网的路由routes。它metric会被
设置为100。

使用网络管理器作为渲染器

Netplan同时支持联网和网络管理器作为后端。您可以使用renderer键指定应使用哪个网络后端来配置特定设备。您还可以通过仅指定renderer密钥将网络的所有配置委派给网络管理器本身:

  1. network:
  2. version: 2
  3. renderer: NetworkManager

配置接口绑定

通过使用物理接口列表和绑定模式声明绑定接口来配置绑定。以下是使用DHCP获取地址的主动备份绑定的示例:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. bonds:
  5. bond0:
  6. dhcp4: yes
  7. interfaces:
  8. - enp3s0
  9. - enp4s0
  10. parameters:
  11. mode: active-backup
  12. primary: enp3s0

以下是一个具有各种绑定接口和不同类型的充当路由器的系统的示例。请注意“可选:true”键声明,该声明允许进行引导而无需等待这些接口完全激活。

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. enp1s0:
  6. dhcp4: no
  7. enp2s0:
  8. dhcp4: no
  9. enp3s0:
  10. dhcp4: no
  11. optional: true
  12. enp4s0:
  13. dhcp4: no
  14. optional: true
  15. enp5s0:
  16. dhcp4: no
  17. optional: true
  18. enp6s0:
  19. dhcp4: no
  20. optional: true
  21. bonds:
  22. bond-lan:
  23. interfaces: [enp2s0, enp3s0]
  24. addresses: [192.168.93.2/24]
  25. parameters:
  26. mode: 802.3ad
  27. mii-monitor-interval: 1
  28. bond-wan:
  29. interfaces: [enp1s0, enp4s0]
  30. addresses: [192.168.1.252/24]
  31. gateway4: 192.168.1.1
  32. nameservers:
  33. search: [local]
  34. addresses: [8.8.8.8, 8.8.4.4]
  35. parameters:
  36. mode: active-backup
  37. mii-monitor-interval: 1
  38. gratuitious-arp: 5
  39. bond-conntrack:
  40. interfaces: [enp5s0, enp6s0]
  41. addresses: [192.168.254.2/24]
  42. parameters:
  43. mode: balance-rr
  44. mii-monitor-interval: 1

配置网桥

要创建一个由使用DHCP的单个设备组成的非常简单的网桥,请输入:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. enp3s0:
  6. dhcp4: no
  7. bridges:
  8. br0:
  9. dhcp4: yes
  10. interfaces:
  11. - enp3s0

一个更复杂的示例,要使libvirtd使用带有标记vlan的特定网桥,同时继续提供未标记的接口,将涉及:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. enp0s25:
  6. dhcp4: true
  7. bridges:
  8. br0:
  9. addresses: [ 10.3.99.25/24 ]
  10. interfaces: [ vlan15 ]
  11. vlans:
  12. vlan15:
  13. accept-ra: no
  14. id: 15
  15. link: enp0s25

然后,通过将以下内容添加到下方的新XML文件中,将libvirtd配置为使用此桥/etc/libvirtd/qemu/networks/。桥中的名称 标签以及 需要匹配使用netplan配置的桥接设备的名称:

  1. <network>
  2. <name>br0</name>
  3. <bridge name='br0'/>
  4. <forward mode="bridge"/>
  5. </network>

将VLAN连接到网络接口

要使用重命名的接口配置多个VLAN:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. mainif:
  6. match:
  7. macaddress: "de:ad:be:ef:ca:fe"
  8. set-name: mainif
  9. addresses: [ "10.3.0.5/23" ]
  10. gateway4: 10.3.0.1
  11. nameservers:
  12. addresses: [ "8.8.8.8", "8.8.4.4" ]
  13. search: [ example.com ]
  14. vlans:
  15. vlan15:
  16. id: 15
  17. link: mainif
  18. addresses: [ "10.3.99.5/24" ]
  19. vlan10:
  20. id: 10
  21. link: mainif
  22. addresses: [ "10.3.98.5/24" ]
  23. nameservers:
  24. addresses: [ "127.0.0.1" ]
  25. search: [ domain1.example.com, domain2.example.com ]

到达直接连接的网关

这允许使用“ on-link”关键字设置默认路由或任何路由,其中​​网关是直接连接到网络的IP地址,即使该地址与接口上配置的子网不匹配也是如此。

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. addresses: [ "10.10.10.1/24" ]
  6. routes:
  7. - to: 0.0.0.0/0
  8. via: 9.9.9.9
  9. on-link: true

对于IPv6,配置将非常相似,但显着的不同是附加的范围:将主机路由链接到所需的路由器地址:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. addresses: [ "2001:cafe:face:beef::dead:dead/64" ]
  6. routes:
  7. - to: "2001:cafe:face::1/128"
  8. scope: link
  9. - to: "::/0"
  10. via: "2001:cafe:face::1"
  11. on-link: true

配置源路由

可以将路由表添加到特定接口,以允许在两个网络之间进行路由:

在下面的示例中,ens3在192.168.3.0/24网络上,ens5在192.168.5.0/24网络上。这使任一网络上的客户端都可以连接到另一网络,并使响应来自正确的接口。

此外,默认路由仍分配给ens5,允许任何其他流量通过。

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. ens3:
  6. addresses:
  7. - 192.168.3.30/24
  8. dhcp4: no
  9. routes:
  10. - to: 192.168.3.0/24
  11. via: 192.168.3.1
  12. table: 101
  13. routing-policy:
  14. - from: 192.168.3.0/24
  15. table: 101
  16. ens5:
  17. addresses:
  18. - 192.168.5.24/24
  19. dhcp4: no
  20. gateway4: 192.168.5.1
  21. routes:
  22. - to: 192.168.5.0/24
  23. via: 192.168.5.1
  24. table: 102
  25. routing-policy:
  26. - from: 192.168.5.0/24
  27. table: 102

配置回送接口

Networkd不允许创建新的回送设备,但是用户可以将新地址添加到标准回送接口lo中,以使其在计算机上以及自定义路由中被视为有效地址:

  1. network:
  2. version: 2
  3. renderer: networkd
  4. ethernets:
  5. lo:
  6. match:
  7. name: lo
  8. addresses: [ 7.7.7.7/32 ]

与Windows DHCP服务器集成

对于Windows Server使用dhcp-identifier键提供DHCP的网络,可以实现互操作性:

  1. network:
  2. version: 2
  3. ethernets:
  4. enp3s0:
  5. dhcp4: yes
  6. dhcp-identifier: mac

连接IP隧道

隧道允许管理员配置两个连接特殊隧道接口并执行所需路由的端点,从而在Internet上扩展网络。Netplan支持SIT,GRE,IP-in-IP(ipip,ipip6,ip6ip6),IP6GRE,VTI和VTI6隧道。

隧道的常见用法是在仅支持IPv4的网络上启用IPv6连接。以下示例显示了如何配置这样的隧道。

这里的1.1.1.1是客户端自己的IP地址;2.2.2.2是远程服务器的IPv4地址,“ 2001:dead:beef :: 2/64”是隧道定义的客户端的IPv6地址,“ 2001:dead:beef :: 1”是远程服务器的IPv6地址。

最后,“ 2001:cafe:face :: 1/64”是路由的IPv6前缀内的客户端地址:

  1. network:
  2. version: 2
  3. ethernets:
  4. eth0:
  5. addresses:
  6. - 1.1.1.1/24
  7. - "2001:cafe:face::1/64"
  8. gateway4: 1.1.1.254
  9. tunnels:
  10. he-ipv6:
  11. mode: sit
  12. remote: 2.2.2.2
  13. local: 1.1.1.1
  14. addresses:
  15. - "2001:dead:beef::2/64"
  16. gateway6: "2001:dead:beef::1"

配置SR-IOV虚拟功能

对于SR-IOV网卡,可以为每个已配置的物理功能动态分配虚拟功能接口。在netplan中,通过具有指向父PF的link:属性来定义VF。

  1. network:
  2. version: 2
  3. ethernets:
  4. eno1:
  5. mtu: 9000
  6. enp1s16f1:
  7. link: eno1
  8. addresses : [ "10.15.98.25/24" ]
  9. vf1:
  10. match:
  11. name: enp1s16f[2-3]
  12. link: eno1
  13. addresses : [ "10.15.99.25/24" ]
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/479466
推荐阅读
相关标签
  

闽ICP备14008679号