我在接入点和 linux 站之间使用无线电通信。当机器只发送数据包时,连接质量还可以。机器只下载数据包的情况也可以这样说(大部分数据包向一个方向)。然而不幸的是,当通信接近 50/50 时,链接变得非常不稳定并且延迟变得疯狂。我可以使用两个无线电使用不同的频率进行上行链路和下行链路以避免干扰(全双工),但是是否可以配置 Linux 来使用它?
我说的是具有单个 IP 的配置,其中数据包由一个接口发送并由另一个接口接收。ap 和 station 都是基于 Linux 的。
我在接入点和 linux 站之间使用无线电通信。当机器只发送数据包时,连接质量还可以。机器只下载数据包的情况也可以这样说(大部分数据包向一个方向)。然而不幸的是,当通信接近 50/50 时,链接变得非常不稳定并且延迟变得疯狂。我可以使用两个无线电使用不同的频率进行上行链路和下行链路以避免干扰(全双工),但是是否可以配置 Linux 来使用它?
我说的是具有单个 IP 的配置,其中数据包由一个接口发送并由另一个接口接收。ap 和 station 都是基于 Linux 的。
我在具有 ssd 的机器上启用issue_discards
了lvm.conf
文件,我想blkdiscard
在其中一个逻辑卷上执行。我可以在不重新启动机器的情况下这样做吗?我能够卸载物理卷以及存储在这个特定 ssd 上的所有逻辑卷,但我更愿意避免系统重启。
出于好奇,我正在阅读一些关于透明 TOR 代理的教程,因为从网络的角度来看,这是一个非常有趣的话题。与只使用tun
/tap
接口并且我完全清楚的 VPN 网关相反,TOR 代理使用单个端口。所有教程都重复魔术线:
iptables -t nat -A PREROUTING -i eth0 -p tcp --syn -j REDIRECT --to-ports 9040
eth0
输入 (LAN) 接口在哪里,并且9040
是一些 TOR 端口。问题是,从网络的角度来看,我完全不明白为什么这样的事情是有意义的。
根据我对redirect
/ dst-nat
chains 的理解以及它在物理路由器中的工作方式,dst-nat
chain takedst-port
和dst-addr
BEFORE路由决定被采取并将它们更改为其他东西。例如:
dst-nat
:192.168.1.2:46364 -> 88.88.88.88:80
dst-nat
:192.168.1.2:46364 -> 99.99.99.99:8080
并且99.99.99.99:8080
是 IP 数据包流通道中的其他链所看到的(例如filter
表),这就是数据包从现在开始在离开设备后的样子。
现在互联网上的许多人(包括在这个stackexchange上)声称这与设置为接口的本地地址redirect
基本相同。鉴于此,这条规则:dst-nat
dst-addr
iptables -t nat -A PREROUTING -i eth0 -p tcp --syn -j REDIRECT --to-ports 9040
显然没有意义。如果这就是它的工作方式,那么 TOR 将获取所有带有 destination 的数据包127.0.0.1:9040
。对于应用程序获取数据包并以某种方式响应它的典型应用程序(例如 Web 服务器),这是完全有意义的,因为毕竟,这样的服务器进程是数据包的最终目的地,所以目的地地址是 localhost 是可以的。但是TOR路由器很好......一个路由器,所以它必须知道数据包的原始目的地。我错过了什么吗?不DNAT
影响本地应用程序接收什么?还是REDIRECT
指令的特定行为?