可以从Internet上的任意位置随机访问汽车登记员的设置和记录

长期以来,车载DVR一直是任何驾车者的必备属性之一。 就我个人而言,我可以毫不夸张地说,没有这样一个简单的小工具,我就不会感到安全。 当然,在过去的10年中,进步已经取得了重大进展:今天,市场上已经有很多制造商生产出体面的模型,而我们(驾驶员)已经有很多选择。

我的选择落在Neoline G-Tech X53注册商处,其原因如下:

  • 它配备了两个摄像头,其中一个可以提供真实的FullHD图像,
  • 专为隐蔽安装而设计,
  • 它可以通过智能手机上的应用程序通过WiFi进行完全控制,这在本文中很重要,此外,它还可以实现真正秘密的安装,而无需定期爬升或卸下模块(例如,从USB闪存驱动器复制录音)。


然后,经常发生食欲与进食有关。 在将记录器安装到汽车上后,我欣赏了它的便利性,趣味性,我不仅希望在机器附近捕获WiFi信号的地方 ,而且通常在所有地方都可以访问它的记录。 好吧,或者至少在家里,适合初学者。

当然,从本质上讲,有一些注册商模型可以根据需要将记录合并到云中,但是它们会将用户绑定到该云上并迫使他们为此付费,但这不是我的选择。 此外,我的愿望清单与计划在车上安装带调制解调器的WiFi路由器的计划相吻合,因此该任务看起来相当可行。

的确,很快就知道注册服务商没有文档化的API,并且只能使用智能手机的本机应用程序来访问它。 反过来,该应用程序却非常古怪-仅在将手机连接到WiFi注册表时才可以使用。


也就是说,我必须了解该应用程序对WiFi的需求,并使其“看”位于完全不同的地方的注册商,并提供所有相关技术问题的解决方案-总的来说,我就是这样。

作为在汽车中通过WiFi分布Internet的路由器,我将Mikrotik RBmAP2nD(mAP)与Huawei e3372h调制解调器一起使用(如果您知道可以在其上实现以下描述的配置的其他预算选项,请在评论中写)。 由于注册服务商只能分发其WiFi,而不能连接到现有的AP,因此我必须配置应该连接到它的AP客户端。 然后很快就很清楚,Mikrotik作为AP和AP客户端(在从属接口上)的工作会导致WiFi的不稳定分配,因此决定与另一主路由器配对-Mikrotik RBmAPL-2nD(mAP lite)。


作弊应用


首先,我通过在同一台机器上运行的完全不同的WiFi网络使该应用程序与注册服务商一起工作。 在此过程中,我设法回答了以下问题-应用程序如何识别注册商的网络以及如何欺骗它。 此外,在此过程中,我们设法实现了更大的便利-现在,与汽车中的注册服务商合作,您无需切换到没有Internet的WiFi。

在介绍有效解决方案的过程中,我不会详细描述数十个实验,而只是描述该解决方案。 因此,应用程序需要什么来识别WiFi注册表:

  1. SSID应该看起来像“ G-Tech X5X-120 ... ”,在十六进制数字系统中,最后的点不是任意的点,而是任意的数字(小写字母)。 例如,我安装了“ G-Tech X5X-120aaa ”,依此类推。 也许除了“ 120”之外,您还可以自己放置一些东西,我没有尝试过。
  2. 客户端地址必须通过DHCP获取,必须在子网192.168.100.0/24中,服务器的地址(注册商)= 192.168.100.1。

其余的并不重要。 我没有尝试过许多其他事情,但是我可以肯定地知道:

  1. AP和服务器的MAC地址无关紧要。
  2. 如果沿行车路线的MTU减少的部分(例如,隧道),则连接工作正常。
  3. TCP窗口足够宽,因此即使在300ms或更高的速度下,ping记录也不会减慢记录的下载速度。

那么底线是什么?

  • 该应用程序希望在网络192.168.100.0/24上有一个地址,并连接到地址192.168.100.1。
  • 注册服务商的地址也是192.168.100.1,并且他希望客户端位于网络192.168.100.0/24上(他根本没有到他人的路由)。

这并没有改变,但是我们想学习如何分发应用程序和注册商。 因此,您需要为分发WiFi的路由器分配192.168.100.1的地址,并且要解决流量路由问题,您需要输入连接子网并添加一些网络魔术。 例如,像这样:


说明:

  • 该应用程序在连接到R1路由器的智能手机上运行。 智能手机通过DHCP接收地址,在我们的示例中为192.168.100.100。
  • WiFi接口上R1的IP地址为192.168.100.1(根据应用程序的需要),以太网接口上的R1的IP地址为192.168.99.1(这是对接子网)。
  • 以太网接口上的R2 IP地址是192.168.99.2,在WiFi接口上,它是通过DHCP从注册商处获得的,在我们的示例中是192.168.100.150。
  • 每个路由器在输入上执行DNAT,在输出上执行SNAT,因此每个子网上的数据包都具有与该网络的边缘路由器的地址匹配的源和目标地址。

连接方式:

  1. 该应用程序确保已将其连接到注册服务商的WiFi,并假设该地址是注册服务商的地址,并启动与地址192.168.100.1的连接。
  2. R1接受连接请求,在入站DNAT接口上执行,将目标地址替换为192.168.99.2,在传出接口-SNAT上执行,将源地址替换为192.168.99.1。
  3. R2接受连接请求,在进入的DNAT接口上执行,将目标地址替换为192.168.100.1,在输出接口上-伪装,将源地址替换为通过DHCP从注册服务商收到的地址。
  4. 注册器接受并处理来自先前通过DHCP发出的地址的连接请求。 这是必需的。

一个有思想的读者已经有一个问题:我应该重定向哪种流量? 从“ ssh以外的所有流量”开始并打开日志记录,我意识到重定向TCP端口7777、7778和7779足够了 。 该应用程序不需要其他任何内容即可与注册商一起使用。

我们通过互联网传递流量


通过学习如何欺骗应用程序,我消除了实现主要目标的最困难的障碍-组织从Internet上任何位置的记录的访问。 但是,为了使在“任何时候”都可以在电话上运行的应用程序能够连接到注册服务商,以“欺骗”,必须满足上述所有条件,这会施加一些限制。 但是,在一个地址上,特别需要经常记录-它们在家里。 在这里,我们从家用路由器开始。

正如您可能已经猜到的,我在家里也有Mikrotik。 外部路由器有一个“白色” IP地址,我用它在汽车和家用路由器之间创建了一个L2TP隧道,并在它们之间组织了另一个对接子网。 我在上述电路中添加了另一个路由器,现在看起来像这样简化:


说明:

  • 该应用程序在连接到R0家庭路由器的智能手机上运行。 智能手机通过DHCP接收地址,在我们的示例中为192.168.100.100。
  • WiFi接口上R0的IP地址为192.168.100.1(根据应用程序的需要),L2TP接口上的IP地址为192.168.98.1(对接子网0)。
  • L2TP接口上的IP地址R1为192.168.98.2,以太网接口上的IP地址为192.168.99.1(连接子网1)。
  • 以太网接口上的R2 IP地址是192.168.99.2,在WiFi接口上,它是通过DHCP从注册商处获得的,在我们的示例中是192.168.100.150。
  • 每个路由器在输入上执行DNAT,在输出上执行SNAT,因此每个子网上的数据包都具有与该网络的边缘路由器的地址匹配的源和目标地址。

连接方式:

  1. 该应用程序确保已将其连接到注册服务商的WiFi,并假设该地址是注册服务商的地址,并启动与地址192.168.100.1的连接。
  2. R0通过在入站DNAT接口上执行并将目标地址替换为192.168.98.2,并在传出接口-SNAT上执行并将源地址替换为192.168.98.1。来接受连接请求。
  3. R1通过在入站DNAT接口上执行并将目标地址替换为192.168.99.2,并在传出接口-SNAT上执行并将源地址替换为192.168.99.1来接受连接请求。
  4. R2接受连接请求,在进入的DNAT接口上执行,将目标地址替换为192.168.100.1,在输出接口上-伪装,将源地址替换为通过DHCP从注册服务商收到的地址。
  5. 注册器接受并处理来自先前通过DHCP发出的地址的连接请求。 这是必需的。

PS。
对于第2点,如果立即在第99个子网(而不是第98个子网)进行DNAT,并通过R1将路由添加到第99个子网,则可以使操作变得容易一些。 但是,我只是描述了一般性想法及其实现的一个示例,并且有很多方法可以将所有这些集成到现有网络中。

我们从哪里得到食物?


路由器和调制解调器消耗很少,但足以在3-4天之内耗尽汽车电池的电量。 因此,最好按需包括它们。 为了适应“随时访问”的概念,我利用了这样一个事实,即我的车上安装的Starline A96警报器除其他外还具有GSM模块,可以根据遥控器或智能手机应用程序的命令对附加通道进行编程,并为mAP路由器加电从一个额外的通道和mAP lite-从第一个通过PoE。 我不会在这里详细讨论,所有这些都很容易在google上找到,但是如果有兴趣,请在评论中写下。

总结


完成所有这些操作后,我不仅有机会在家中复制记录器记录,而且还可以实时观看来自摄像机的图像。 所有这一切,无论汽车位于何处,最主要的是其路由器具有Internet连接。 那不是完美的吗?

而且,有了令人愉悦的奖励,我复制视频的速度比坐在车里更快:1.2-1.5 mb / s对1 mb / s。 我不知道为什么


会有配置吗?


老实说,我认为任何人都不会完全按照所描述的去做。 在任何情况下,解决方案都将适应现有的解决方案。 但是,如果您确实需要它-在下面,您会找到nat规则,上面讨论的所有内容的99%都在该规则上实现。

00
/ip firewall nat add action=src-nat chain=srcnat comment=AVR out-interface=l2tp-auto src-address=192.168.100.0/24 to-addresses=192.168.98.1 add action=dst-nat chain=dstnat comment=AVR dst-address=192.168.100.1 dst-port=7777,7778,7779 in-interface=wlan1 protocol=tcp to-addresses=192.168.98.2 


R1
 /ip firewall nat add action=masquerade chain=srcnat comment=AVR out-interface=l2tp-auto add action=masquerade chain=srcnat comment=AVR out-interface=ether2 add action=masquerade chain=srcnat comment=AVR out-interface=wlan1 add action=dst-nat chain=dstnat comment=AVR dst-port=7777,7778,7779 in-interface=l2tp-auto protocol=tcp to-addresses=192.168.99.2 add action=dst-nat chain=dstnat comment=AVR dst-port=7777,7778,7779 in-interface=wlan1 protocol=tcp to-addresses=192.168.99.2 


R2
 /ip firewall nat add action=dst-nat chain=dstnat comment=AVR dst-address=192.168.99.2 dst-port=7777,7778,7779 in-interface=ether1 protocol=tcp to-addresses=192.168.100.1 add action=masquerade chain=srcnat comment=AVR out-interface=wlan1 

Source: https://habr.com/ru/post/zh-CN416323/


All Articles