我在公司 Lab 里的一台物理机上跑了最新的 PVE 8.3 ,主要是为了跑 CI/CD ,测试环境需要随时创建一系列 runner VM 。这是大背景。
公司是大内网,10.x.x.x 的,IT 也不管这些内部机器的 DNS 解析啥的。我就在这个 PVE 上自己先建了个 VM 用来跑 PowerDNS 服务,然后配到了 PVE 的 SDN 里,现在已经可以在创建 vm 时自动把这个 vm 的域名登记到 powerDNS 里,这些 vm 用了 192.168....的地址,然后 vm 里也可以联网出去更新系统啥的。VM 本身是用了 SNAT 访问大内网(当然也就能访问互联网)。
现在主要的问题是公司大内网的机器访问这些 SNAT 的 runner 不方便,不能直接 ssh 进去,不知道这种情况各位大拿是怎么解决的?
有个思路是在 PVE 这个主机上直接配 iptable 的规则,类似这样:
iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 30022 -j DNAT --to-destination 192.168.200.10:22
|