如何在Tinc VPN后面访问本地子网

我正在尝试在DigitalOcean上的云服务器和使用Tinc的本地服务器之间build立VPN连接。 到目前为止,我已经成功地连接和运行了,并且服务器可以通过VPN地址相互交谈 – 根据本教程 。

但是,我无法从DigitalOcean上的服务器ping本地局域网(172.23.6.0/24)上的任何设备。 我试过指定我的本地子网作为tinc hosts文件的子网,但是不起作用。 当我尝试从云服务器进行ping时,我只是收到“ 目标主机不可达 ”错误。

这是我第一次和Tinc一起工作,所以学习曲线非常陡峭。 我仍在阅读文档,但目前发现有点混乱。 这不是写得不好,我只是因为某些原因没有得到它。

任何人都能用我想要做的事情取得成功,可以借给我吗? 谢谢。

PS。 我的最终目标是让云服务器和内部服务器相互通信,以便云服务器知道防火墙后面的局域网子网。 这样我就可以做一些活动目录authentication,而不必将AD服务器暴露给互联网(至less不是直接)。

首先 – 请发布configuration文件和日志与您的问题。

我假设你设置大部分是正确的,因为你有连接机器到机器。

Tinc本身处理路由 – 它不使用机器上的路由表(因为这会产生不必要的stream量)。

在tinc的hosts文件中,您必须包含要显示的子网。 这里有一个示例configuration连接mars(这些configuration的服务器)到venus(远程服务器)。

远程服务器具有可见的子网10.1.74.0/24和10.12.1.0/24,本地服务器可见10.1.1.0/24。 注意tinc-up添加了路由,但是mars和venus文件定义了通过vpn(Subnet选项)允许哪些段。

这些是服务器火星上的configuration文件:

/etc/tinc/venus/tinc.conf

Name = vpn Device = /dev/net/tun PrivateKeyFile = /etc/tinc/venus/rsa_key.priv TCPOnly=yes AddressFamily=any 

在/ etc / TINC /金星/ TINC向上

 #!/bin/sh ifconfig $INTERFACE hw ether fe:fd:0:0:0:0 ifconfig $INTERFACE 10.1.1.90 netmask 255.0.0.0 -arp route add -net 10.1.74.0 netmask 255.255.255.0 gateway 10.1.1.90 route add -net 10.12.1.0 netmask 255.255.255.0 gw 10.1.74.6 

的/ etc / TINC /金星/主机/金星

 Address = 189.22.2.252 Port=260 Subnet = 10.1.74.0/24 Subnet = 10.12.1.0/24 -----BEGIN RSA PUBLIC KEY----- MIGJAoGBAMti4IsVr3UKqg24pVfvHRyL+0S1uGWKGsmNw1drAPn18PgY7hC8DKdO +aEiboP2vOJTzj0pgpsdf43OypWzqXDQkIpjMLLjJMa0X9WLrQ3UKq4pVm9FBWVp yiT7iZirkv6+iqTJq94rWKdOFaHg44h536hethdfghy54ubGlplJjGxHAgMBAAE= -----END RSA PUBLIC KEY----- 

的/ etc / TINC /金星/主机/火星

 Address = tinc.public.net Port=260 Subnet = 10.1.1.0/24 -----BEGIN RSA PUBLIC KEY----- MIGJyUGiL/WWZu6AoGBALvkoE+oSSO0a997Xb4+3woqJLAOi/js1ctlIpeLliN1T DEv5+mu7fXXCAuOrgteHFYAsmwHPG+7VBSoDNa3WuZNlDFUa8WzHx6lJ6Rmrk6WV A22Ya2MVvG09b1HTWgzw1MvVKkENeYW6TCiUGsNJh15ADGpb2dG3AgMBAAE= -----END RSA PUBLIC KEY-----