2017-07-27 45 views
0

我试图想出一种方法来同步两台计算机之间的sqlite数据库。同步sqlite文件没有公共的IP

如果这是在具有公共IP的计算机上,这并不困难,但我试图找到一种方法来使任何两个设备都可以工作,并且大多数计算机没有静态IP。

我能解决这个问题的方法有哪些?

回答

1

假设你只需要找到对等IP地址...

  1. 广播一个UDP数据包到LAN时,如果机器是同一个局域网段。您也可以尝试使用管理员作用域组播,但里程会根据网络设置和使用中的设备而有所不同。

  2. 如果试图在互联网上查找两台计算机(假设您可以解决NAT地址转换问题),则需要跳出将为您提供信息的节点。例如,写一个数据包到dweet.io或sparkfun或其他可以存储和转发数据的网站。你也可以阅读Twitter的饲料等,基本上你需要一个已知的参考点来讲话。研究恶意软件如何为某些想法创建命令和控制网络。或者搜索集合点服务器和协议。

  3. 如果地址范围很小,请探测所有可能的地址。但要小心,因为你可能会触发反病毒或ISP的行动

  4. 如果想要更多的浏览器的基础,看看webrtc,不完全是你在之后,但一些发现技术可能是有趣的。

  5. 如果您有权限访问,则可以使用DNS记录进行播放。基本上这是(2)的变体。

还有更多的选择,但是这会得到更多的特殊用途,或者对于一般用途来说会变得太过于苛刻。另请参阅如何形成网状网络。