通过特定网络接口路由HTTP

问题描述 投票:0回答:1

我对Linux非常陌生,因此请原谅我,我已经阅读了很多答案,但我不确定它们是否确实与我的问题有关。

我有一个无头的树莓派pi,它自动连接到手机的蓝牙,我的手机通过网络共享方式共享其互联网访问权限。我使用此初始可靠连接将SSH连接到我的树莓派,并通过VNC查看器使用桌面。

我想连接到使用强制门户的WiFi网络,但是浏览器始终使用蓝牙连接,因此它永远不会将我重定向到门户页面。蓝牙连接仅是为了能够使用桌面,以便我可以通过门户网站访问,然后我想断开蓝牙连接或不使用它,主要是因为它提供的带宽较低。

我已经将wlan0添加为具有ifmetric的优先级接口,但是没有用。

我当时以为通过wlan0接口强制所有HTTP连接可以解决问题,但也许有一种更简单的方法,请随时告诉我。

您能用“简单”的术语解释实现这一目标的最佳方法吗?

linux networking routing raspberry-pi port
1个回答
0
投票

当然,有多种解决方案。最简单的是确保只有一条正确的默认路由。

有3种情况:

  1. 您仅通过ssh通过蓝牙连接
  2. 您已通过蓝牙和wifi连接,但尚未通过启动连接
  3. 您正在经历轰动

每个都需要不同的网络配置。

在1中,您的网络配置可能是:

  • 某些IP地址(我们称之为IP-bt)和网络掩码
  • 默认网关是您的电话

使用route -n,您可以验证。

在2中,网络配置在某种程度上取决于wifi网络,但是通常,您的网络配置将是:

  • 您仍然有IP-bt
  • 您将在wifi适配器上有一个新地址(我们称为IP-wifi)
  • 默认网关应该是wifi网络上的网关。

[用route -n验证时,您仍然可能会看到一条目的地为0.0.0.0的电话。您可以删除此路线。您的电话应位于直接连接的网络上,因此ssh会话不应中断。

如果默认gw不在wifi网络上,您仍然可以删除将手机设置为默认gw的路由。

在3以下,默认gw必须在wifi网络上,而不是在电话上。因为它是直接连接的,所以您仍然可以使用手机。

在这种情况下需要注意的是,您的电话将充当DHCP服务器。这意味着您的DHCP租约有时会刷新,并且蓝牙默认路由可能会重新出现。断开蓝牙连接可以防止这种情况。

第二种解决方法是使用ifmetric。不要将wlan0设置为较低的指标,而是将蓝牙设置为较高的指标。再次使用route -n验证指标是否符合您的期望。使用traceroute验证数据包如何移动。

第三种也是最复杂的选择是安装Quagga并配置正确的路由。

© www.soinside.com 2019 - 2024. All rights reserved.