电气工程师在这里试图理解事物。所以我想这可能很简单或非常复杂,但是路由器究竟是如何在局域网上的两台 PC 之间路由流量的呢?
例如。PC-1 和 PC-2 是坐在我面前桌子上的两台笔记本电脑,它们连接到同一个路由器/调制解调器。PC-1 IP 是 192.168.10.1 PC-2 IP 是 192.168.10.2。在这里阅读这篇内容丰富的文章后:https ://www.think-like-a-computer.com/2011/07/18/how-routing-works/ 我知道当他们在德国交流时说 PC-3 IP 地址 200.200.100.3 路由器将 IP 地址抽象为子网掩码 200.200.100.x,将其发送到另一个路由器,该路由器将其发送到另一个路由器,最终将其路由到连接到 PC-3 路由器的子网掩码地址为 200.200.100.x,然后将数据包识别为前往 PC-3 并将其发送到那里。但是最后一步实际上是如何发生的呢?
路由器操作的代码是用什么语言编写的,C/C++/Assembler?如何手动从 PC-1 向 PC-2 发送数据包?在运行 Windows 10 的台式电脑中,这种低级通信是否可以通过命令行或程序进行?我可以阅读路由器用于在 LAN 上路由数据包的源代码,还是在某处公开可用?我做了很多搜索,但每个网站基本上都说“然后路由器将数据包识别为属于 PC-x 并在途中发送它”,而没有详细说明实际发生的情况,可能是因为谷歌的平均用户故障排除不需要这些知识。非常感谢你!