【发布时间】:2009-01-15 16:36:52
【问题描述】:
我支持发送 TTL 为 1 的多播数据包的第 3 方应用程序。我们无法修改应用程序,但需要更高的 TTL 才能将数据包路由到另一个客户的网络。是否有网络设备或 windows (server 2003) 应用程序可以让我修改它?
在这种情况下,有没有更好的方法来连接发送方和接收方?
【问题讨论】:
-
与编程无关。
标签: networking multicast ttl
我支持发送 TTL 为 1 的多播数据包的第 3 方应用程序。我们无法修改应用程序,但需要更高的 TTL 才能将数据包路由到另一个客户的网络。是否有网络设备或 windows (server 2003) 应用程序可以让我修改它?
在这种情况下,有没有更好的方法来连接发送方和接收方?
【问题讨论】:
标签: networking multicast ttl
Linux netfilter,更广为人知的 iptables 命令:
TTL 修改被记录为“扩展”,但它似乎已经包含在流行的 Linux 发行版中。
来自手册页(man iptables):
这用于修改 IPv4 TTL 标头字段。 TTL 字段决定了一个数据包可以遍历多少跳(路由器),直到超过它的生存时间。设置或增加 TTL 字段可能非常危险,因此应不惜一切代价避免。永远不要设置或增加离开本地网络的数据包的值!
mangle 表:
--ttl-set value - 将 TTL 值设置为“值”。
--ttl-dec value - 将 TTL 值“值”递减。
--ttl-inc value - 将 TTL 值‘value’倍增加。
【讨论】:
您可以查看mTunnel,它用于隧道多播流量。
【讨论】:
这在发送主机上是可行的(例如,使用 ipfw 并在 FreeBSD 上转移;我不知道 MS-Windows 的等价物),但可能比它值得付出更多的努力。
一个简单的选择可能是使用 VPN(虚拟专用网络),让应用层看起来发送和接收主机在同一个(虚拟)网络上。
【讨论】: