我正在尝试在 Ubuntu 16.04 中创建一个虚拟网络接口,特别是 wifi 接口的副本。
过去我只需运行此命令:然后使用静态 IP 地址创建sudo ifconfig wlan0:0 192.168.1.3
新接口。在我当前的安装中,此命令适用于以太网接口(名为),但当我尝试使用 wifi 接口(名为)时,没有任何反应。尝试使用 wifi 接口名称后,没有显示任何错误消息,但运行也不会显示新接口。wlan0:0
eno1
wlx08863b02e256
ifconfig
我需要这样做,因为我尝试使用的工具需要访问多个 IP 地址,比可用的网络接口数量的 IP 地址还多。
在 Ubuntu 16.04 中是否有其他创建虚拟网络接口的方法?还是我对 wifi 接口做了什么错误?
答案1
正如之前在本站的多个回答中提到的,wlan:0
不是“虚拟接口”——它是ifconfig
分配多个 IP 地址的旧方法。使用更现代的工具,例如ip
,您只需将 分配ip addr add ..
给同一接口的多个 IP 地址。它还将列出 下的所有地址ifconfig
,wlan:0
等等wlan:1
,wlan
因为这是现代 Linux 内核在内部存储它们的方式。
请注意,使用多个 IP 地址可能很麻烦,因为您必须确保所有应用程序都绑定到正确的地址。并非所有应用程序都能做到这一点。您没有说明您尝试使用的工具是什么,以及它想如何使用这些地址。
还有多种其他方式来创建真实的虚拟网络接口,以防您的工具确实需要多个接口,而不仅仅是多个 IP 地址。使用哪种方式取决于工具的需求。