我正在尝试编写一个 Windows 应用程序,它将在来自 PC 的以太网链接上生成流量。
我想使用 webBrowser 控件不断拉取网页以产生流量。
在这种情况下,我希望每个 webBrowser 控件链接到一个唯一的源 IP 地址。两个问题:
是否可以为一台 PC(即一个 MAC 地址)分配多个并发 IP 地址?
如果问题 #1 的答案是肯定的,那么在应用程序 C# 代码中使用 DHCP 请求来获取额外的 IP 地址是最简单的,还是只配置静态 IP 地址更容易?
如何在我的 C# 代码中获取步骤 2 中获得的 IP 地址(请给我一个大概的想法)。
谢谢, 史蒂夫
最佳答案
是的,单个网络适配器绝对有可能拥有多个 IP 地址。但是,我建议手动配置它们(在 Windows 中,您可以通过网络连接的 IPv4 属性中的高级 TCP/IP 设置添加额外的 IP 地址)。
就使用这些 IP 地址而言,从代码上来说相对容易,您可以简单地绑定(bind)到特定的本地 IP 地址(如果使用 TcpClient
,则 TcpClient(IPEndPoint localEndPoint)
构造函数将允许你这样做)。
但是,如果您使用的是 Web 浏览器控件,则可能会更加困难,并且可能无法通过控件上的可公开访问的界面将其绑定(bind)到特定的本地地址。
假设您不需要任何特别高级的功能,您可以通过创建自己的简单 HTTP 请求并通过适当绑定(bind)的 TcpClient
发送它们来获得更多运气。
编辑:
快速搜索出现了 this answer这可能有用 - 虽然它仍然不允许您使用绑定(bind)到特定本地地址的图形 Web 浏览器控件,但它确实允许您使用 HttpWebRequest
,这将允许您处理发送更高级的网络请求(cookie、压缩、重定向等)。
关于C# - 一个 MAC 地址,多个源 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13369284/