路由器 - 我可以远程强制路由器通过特定路由发送我的数据包吗?(在数据包/网络层)

网络工程 路由 路由器 跟踪路由
2022-02-06 03:43:12

我是 C/C++ 网络编程的新手,我正在研究原始套接字来编写简单的 ping 或 traceroute 应用程序,因为它们是在常见的网络编程书籍中编写的。

诸如 traceroute 之类的程序会操纵 TTL 之类的数据包标头,以便它们可以检索路由器 IP 地址。

我知道路由器旨在通过以简单的方式找到最近的路由器来找到最佳路线。
我想知道是否有可能找到一种方法来操作数据包标头,使数据包强制路由器选择特定路由而不是默认路由,我的意思是像 traceroute 那样操作数据包并创建到目的地的手动路由。

第一步,有可能吗?如果没有,并且有任何类似的方法可以实现这一目标,那是什么?

1个回答

在实践中,客户端不能影响路由器的转发决策。最初,源路由(在RFC 791中)旨在实现这一点,但它已经不再使用并且今天几乎没有支持。

严格来说,没有办法完成你的要求。有了更多关于确切意图的详细信息,可能有一些方法可以得到你想要的(路由器发现?网络扫描?漏洞扫描?)。