
Как я могу создатьвиртуальныйинтерфейс, который подключается к той же сети, что ифизическийинтерфейс? Я пробовал искать, но все, что я нашел, это loopback. Мне нужно, чтобы другой конец провода распознавал это как два интерфейса, поэтому loopback не подойдет. Гипервизоры, такие как VMWare, имеют возможность делать именно это (VM и хост распознаются как два устройства в таблице arp маршрутизатора), но в моей ситуации использование VM — это излишество. Мне просто нужно другое соединение или, может быть, какие-то приложения, которые могут вести себя как «виртуальный коммутатор».
У меня Windows, и так должно быть.
Кажется, эта проблема не только у меня. Кто-тоздесьиздесьЯ тоже спрашивал, но приемлемого ответа нет. Прошу прощения, но крайне сложно искать эту проблему.
решение1
Процедура:
Включите функцию Hyper-V в Windows из
optionalfeatures.exe
командной строки или с помощью нее, используя следующую команду от имени администратора, и перезагрузите ПК.DISM.exe /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V /NoRestart
Откройте диспетчер Hyper-V из меню «Пуск» или с помощью диалогового окна «Выполнить», введите
virtmgmt.msc
. Перейдите в Virtual Switch Manager > New Virtual Network Switch > Select External type > Create Virtual Switch > OK. Важно выбрать External type для этого виртуального сетевого коммутатора. Более подробную информацию см. в статье ниже.
- Откройте панель управления сетью (
ncpa.cpl
) > выберите виртуальный сетевой интерфейс (сvEthernet
именем) > измените его IP-адрес и MAC-адрес. IP-адрес может находиться в той же подсети, что и реальная сетевая карта, и в том же шлюзе по умолчанию.
Дальнейшее чтение:
решение2
Процедура для Linux:
Итак, изначально меня попросили сделать это в Windows. Но поскольку Windows-способ обойдется мне еще в 2 часа, я решил сделать это на Linux-боксе. В любом случае, вот как я это сделал, спасибоэтотответ. Надеюсь, это решит чью-то проблему в будущем. Короче:
Создайте виртуальную ссылку на существующем интерфейсе. Вы должны получить локально управляемый адрес (здесь) для передачи, чтобы это потенциально не испортило ситуацию (и это также рекомендуемый способ):
ip link add link eth0 address 56:8A:C0:DD:EE:FF eth0.1 type macvlan
Откройте интерфейс:
ifconfig eth0.1 up
И получите адрес:
dhclient -v eth0.1
Дальнейшее чтение:
Если вы настаиваете на * реальном виртуальном * интерфейсе, есть пакет, названный vde2
для создания виртуальных коммутаторов на Linux. Я не пробовал, но, возможно, это поможет. Немного раздражает, что такого 'маленького' инструмента нет в Windows.
(Да, я создаю ссылку, а не интерфейс. Но это помогло мне выполнить свою задачу. Извините, если мой вопрос сформулирован неверно, вы можете отредактировать его, чтобы прояснить ситуацию. Но в конце концов он отображается как интерфейс, и трафик проходит через этот интерфейс, так что, вероятно, проблема решена?)
решение3
Сначала вам нужно будет создать внешний v-switch с помощью Hyper-V (доступно в win10. Я не уверен, но думаю, вам понадобится установка Pro).
После создания v-switch ваша физическая сетевая карта перейдет под управление Hyper-V, и будет создана виртуальная сетевая карта (представляющая этот v-switch) (заменяющая физическую).
Вы можете добавить еще одну виртуальную сетевую карту Windows к этому v-switch, используя команду Power-Shell (ее необходимо запустить от имени администратора):
Add-VMNetworkAdapter -ManagementOS -SwitchName <Hyper-V's vSW name> -Name <vNIC name>
Для получения более подробной информации перейдите по этой ссылке:Работа с виртуальными сетевыми картами в Windows
решение4
netsh wlan set hostednetwork mode=allow ssid=randomwifiname key=12345678
netsh wlan start hostednetwork
Требует прав администратора, создает виртуальную беспроводную сеть, которая имеет свой собственный интерфейс. Вы можете включить общий доступ к интернету, DHCP автоматически или статически. По умолчанию его IP/подсеть полностью отделены от обычных локальных интерфейсов 192.168.xxx.xxx.