我试图通过拦截从远程服务器(具有公共 IP - 但此服务器已不存在)下载的配置信息来访问过时的网络硬件。设备启动后,它会向远程服务器发送 HTTP get 请求。我能够识别此服务器的 IP 地址(通过捕获网络接口)。如何在本地计算机中模拟 http web 服务器,以便当向远程服务器发出此 get 请求时,我的本地 web 服务器会响应它(使用我的自定义配置信息)我可以使用 Perl 的HTTP::服务器::简单?请推荐一些有帮助的读物。
我使用的是如上图所示的拓扑。假设 5 是我正在谈论的设备(忽略两台客户端计算机。)我可以拦截运行 Linux 的主机上从 eth5 端口流向 eth3 端口的流量吗?我如何监听端口之间的连接并向其中注入流量。原始问题发布这里建议将其移至此处。[图片属于微软]
答案1
如果您有它尝试连接的 IP 地址,只需将其作为别名添加到 eth 端口 5 上的接口。然后,您的机器现在将以该 IP 地址应答,并且您应该能够使用任何 HTTP 服务器将文件发回。
在 Linux 机器上,假设您有一个名为 eth0 和 eth1 的以太网接口。Eth0 连接到您的上游(ISP、CableModem、DSL 等...),而 eth1 是您的本地网络。您要做的就是。
sudo ifconfig eth1:0 ip.address.you.need up
现在假设 Linux 机器是您的局域网的默认网关,当局域网上的任何设备尝试访问ip.address.you.need
您的机器时,都会做出响应,因为它将在其路由表中显示为“/32”路由,因此它甚至不会进入互联网。然后您需要做的就是设置一个 Web 服务器来监听该 IP 地址,然后您就可以将您需要的任何文件返回服务器。
如果您需要使其永久存在,则需要知道您正在使用哪个版本的 Linux,因为每个版本在配置位置上略有不同。