OpenVPN组网设计方案
- 2026-05-25 22:25:00
- 丁国栋
- 原创 9
OpenVPN 是很多 Linux 自带的软件包,很容易获得。
核心需求:
- 外网的主机可以通过OpenVPN能接入办公网内网(外网访问内网)
- 办公网内的主机能访问外网的OpenVPN客户端(内网和外网实现互访)
- 外网的OpenVPN客户端之间能互相访问(外网互访)
- 为了方便内网互访或者外网互访,需要给OpenVPN客户端分配固定的IP地址或者域名
关键决策:
- 选物理节点部署还是其他。OpenVPN部署到物理节点,简化网络复杂度。如果把服务端放到虚拟机或者容器中,又多了一个中间层,部署起来非常不方便。
- 设计好VPN网段,网段中的可用IP数决定了客户端数量。
- 选 TUN 还是 TAP。TUN 是模拟三层网络实现,传输单位是IP包,是默认模式。TAP是模拟二层网络实现,传输单位是Ethernet帧,开销大,但可以桥接物理网络,TAP 模式相当于直接连接到内网。
- 拓扑 topology 选 subnet 还是 net30。一些老版本的 OpenVPN 服务端的 topology 是 net30,在这种拓扑下,/24 子网最多有64对IP,意味着客户端数量不能超过64个。
最终决定:
- 使用物理节点部署
- 网段选择 /23,主要是要避开现有网段
- 选择 TUN 模式
- 拓扑选择 subnet
注意事项:
- 设置办公网回程路由,即为办公网内的主机设置好去往VPN网络的路由
- 设置好OpenVPN服务端内核参数
- 设置好iptables规则
- 为客户端分配证书时设置好CN名称便于 CCD 管理
--
发表评论