Proxmox Simple SDN配置
source link: https://vpsxb.net/5847/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Proxmox Simple SDN配置
得益于ProxmoxVE的SDN功能,现在ProxmoxVE可以更方便的开通和管理NAT小鸡了,不再需要手动配置NAT相关的规则,直接在ProxmoxVE的WEB界面就能实现SNAT。除此之外还支持DHCP,并且ProxmoxVE还将DHCP与IP地址管理(IPAM)功能进行了整合。
从ProxmoxVE 8.1开始默认安装核心软件定义网络(SDN)软件包,如果你是从旧版本升级上来的,则需要在每个节点上安装libpve-network-perl软件包:
apt update apt -y install libpve-network-perl
从ProxmoxVE 7.0及更高版本起默认安装ifupdown2软件包,如果你是从旧版本升级上来的,则还需要安装ifupdown2软件包:
apt -y install ifupdown2
此外还需要确保/etc/network/interfaces配置文件内有如下内容:
source /etc/network/interfaces.d/*
如需要使用DHCP功能,则还需要安装dnsmasq:
apt -y install dnsmasq
之后关闭dnsmasq默认的服务,proxmox会接管dnsmasq:
systemctl disable --now dnsmasq
转到“数据中心”->“SDN”->“区域”,创建一个新的简单(Simple)区域,要激活DHCP功能,你还需要在高级设置中勾选“自动DHCP”选项:
转到“VNets”,创建新的VNet(vnet1在本文的示例中)创建VNet时,“区”选择我们在上一步中创建的区域:
在同一界面中,现在需要在先前创建的VNet中创建子网。这可以通过选择VNet并单击右侧子网界面中的“创建”来完成。
输入你选择的本地子网(在本文的示例中10.0.0.0/24)。
你还需要指定一个IP当作网关,否则DHCP将无法工作(10.0.0.1在本文的示例中)。勾选“SNAT”选项以便为此VNet启用SNAT:
要使用DHCP,我们还需要为此子网创建DHCP范围,这可以通过切换到子网创建对话框中的“DHCP范围”选项卡来完成。我选择10.0.0.10和10.0.0.200作为DHCP范围的起始和结束地址:
现我们需要保存刚才的配置,转到“SDN”界面单击“应用”来完成保存:
确保网络重新加载任务成功完成。如果它完成且没有任何错误或警告,则说明一切正常:
[可选]防火墙配置。如果你启用了PVE的防火墙,则需要添加以下几条规则。
允许DHCP转发流量:
允许DNS查询流量:
[重要]为了避免把自己墙在外面,务必设置一个允许SSH流量的规则:
另外8006端口(PVEWEB面板)的流量也别忘记设置允许:
需要注意的是PVE的防火墙分为3个部分:数据中心级别、节点级别、VM级别。上面的规则建议直接在数据中心级别的防火墙设置:
接下来是创建VM时候的网络配置。我这里使用了系统模板,且模板使用了cloud-init来初始化。
首先你可以按照这篇文章来创建一个系统模板:https://lala.im/8911.html
在系统模板内添加一个网络设备,桥接vnet1(这是之前创建Vnets时指定的ID):
qm set 20000 --net1 virtio,bridge=vnet1
配置系统模板内的cloud-init使用dhcp来获取ipv4:
qm set 20000 --ipconfig1 ip=dhcp
克隆一台VM,检查VM内的网络和DNS:
如果不使用系统模板而是直接创建新VM,则在网络配置这里指定桥接vnet1即可:
如果选择创建CT(LXC容器),则在网络配置这里指定桥接vnet1,并且选中IPv4 DHCP:
检查CT内的网络和DNS:
现在你可以轻松在PVE的IPAM界面管理VM和CT的IP地址:
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK