应用场景:Tailscale的一个节点连接了交换机,交换机下面的设备在不同的vlan下面,并且交换机下面的所有设备不在同一个子网里面例如192.168.101.1、192.168.102.1、192.168.103.1,并且都没有网络。只有vlan1口有网络。但是这个节点设备所连接的口是trunk口,可以和所有的vlan下面的设备连通,我怎么配置子网才能使Tailscale下面的其他节点都能访问到交换机下面的所有设备。
爬记录:
要使Tailscale网络中的其他节点能够访问通过Trunk端口连接到交换机并且位于不同VLAN和子网(如192.168.101.1
、192.168.102.1
、192.168.103.1
)的设备,即使这些设备没有直接的网络连接,你可以将Tailscale节点配置为跨VLAN的路由器。以下是详细的配置步骤:
配置步骤
- 在Tailscale节点上配置VLAN接口:
- 在Tailscale节点上,为每个VLAN创建一个虚拟接口,并为每个接口分配一个IP地址。这允许Tailscale节点与这些VLAN中的设备进行通信。假设Tailscale节点的物理接口是
eth0
,你可以这样配置(以Linux为例):sudo ip link add link eth0 name eth0.101 type vlan id 101
sudo ip addr add 192.168.101.2/24 dev eth0.101
sudo ip link set up dev eth0.101sudo ip link add link eth0 name eth0.102 type vlan id 102
sudo ip addr add 192.168.102.2/24 dev eth0.102
sudo ip link set up dev eth0.102sudo ip link add link eth0 name eth0.103 type vlan id 103
sudo ip addr add 192.168.103.2/24 dev eth0.103
sudo ip link set up dev eth0.103
- 这将为VLAN 101、102、103分别创建虚拟接口并分配IP地址,使Tailscale节点可以与每个VLAN中的设备通信。
- 在Tailscale节点上,为每个VLAN创建一个虚拟接口,并为每个接口分配一个IP地址。这允许Tailscale节点与这些VLAN中的设备进行通信。假设Tailscale节点的物理接口是
- 启用 IP 转发:
- 为了在不同VLAN和子网之间转发流量,你需要在Tailscale节点上启用IP转发:
sudo sysctl -w net.ipv4.ip_forward=1
- 为了使设置在系统重启后依然有效,编辑
/etc/sysctl.conf
文件并添加以下行:net.ipv4.ip_forward=1
- 为了在不同VLAN和子网之间转发流量,你需要在Tailscale节点上启用IP转发:
- 配置Tailscale的子网广告:
- 在Tailscale节点上,通过
tailscale up
命令广告这些子网,使Tailscale网络中的其他节点能够访问这些子网。例如:sudo tailscale up --advertise-routes=192.168.101.0/24,192.168.102.0/24,192.168.103.0/24
- 这将向Tailscale网络中的其他节点宣传这些子网,从而使它们能够通过这个Tailscale节点访问这些VLAN中的设备。
- 在Tailscale节点上,通过
- 设置默认路由(如果需要):
- 如果VLAN1是有网络连接的,你可以设置Tailscale节点的默认路由通过VLAN1的网关,这样Tailscale节点可以通过VLAN1访问外部网络:
sudo ip route add default via <VLAN1网关IP> dev eth0.1
- 确保你替换
<VLAN1网关IP>
为实际的VLAN1网关地址。
- 如果VLAN1是有网络连接的,你可以设置Tailscale节点的默认路由通过VLAN1的网关,这样Tailscale节点可以通过VLAN1访问外部网络:
- 配置交换机的VLAN和Trunk:
- 确保交换机上的VLAN配置正确,Trunk端口允许所有需要的VLAN通过。
- 如果交换机的VLAN配置没有问题,并且Tailscale节点可以访问各VLAN中的设备,你不需要对交换机进行额外的配置。
- 测试连通性:
- 从Tailscale网络中的其他节点,尝试ping或访问交换机下各VLAN子网中的设备,确保它们可以通过Tailscale节点连通。
注意事项
- 防火墙设置:确保Tailscale节点和交换机上没有防火墙阻止这些VLAN之间的流量。
- 静态路由:如果交换机或其他设备上需要了解如何通过Tailscale节点访问其他子网,你可能需要在这些设备上配置静态路由。
通过以上配置,Tailscale网络中的其他节点应该可以通过连接到Trunk端口的Tailscale节点访问交换机下的所有设备,无论它们在哪个VLAN或子网中,即使它们本身没有网络连接。
声明:本站部分资源搜集自网络,相关版权归版权持有人所有,如有侵权,请联络我们,本站会尽快删除。