Назад | Перейти на главную страницу

Назначьте IP-адрес гостю, если у хоста нет IP-адреса (Hyper-V)

У меня есть сервер Hyper-V с 4 GigE nic. Я назначил один из nic как внутреннюю сеть (192.168.x.x), и этот nic работает должным образом.

Нам нужно, чтобы сервер имел доступ к публичной стороне нашего брандмауэра, поэтому я подключил nic # 2 к коммутатору за пределами нашего брандмауэра. В целях безопасности я не хочу, чтобы хост Hyper-V имел внешний IP-адрес, однако я хотел бы, чтобы гости могли подключаться через статически назначенные IP-адреса (за пределами нашего брандмауэра нет DHCP-сервера, поэтому все IP-адреса должны быть статически назначены).

Однако, когда я настраиваю nic как «внешний» и подключаю кабель, хост показывает, что провод подключен, но гость не может пинговать что-либо за пределами сети.

Я предполагаю, что мне нужно, чтобы у хоста был общедоступный IP-адрес, правильно? Если да, можно ли этого избежать?

Хосту не нужен IP-адрес.

Я предполагаю, что вы создали новый виртуальный коммутатор, назначили ему вторую сетевую карту, а затем также виртуальный ник в гостевой системе.

Вы говорите, что не можете пинговать вне сети? Что вы можете пинговать в сети, если вы можете пинговать маршрутизатор или другой физический хост в диапазоне IP-адресов общедоступной сети, тогда сеть HyperV работает правильно.

Ваша проблема (как я подозреваю, если это правда) связана со шлюзом по умолчанию гостя, маршрутизатором, на который гость должен отправлять весь трафик, если он не предназначен для локальной сети.

Вы установили шлюз по умолчанию в свойствах гостевого сетевого адаптера для маршрутизатора в общедоступной сети?

Кроме того, есть ли у этого гостя доступ к внутренней сети? Возможно, вы получите два шлюза по умолчанию (один из виртуального адаптера внутренней сети и один из общедоступного виртуального сетевого адаптера).

В этом случае вам нужно будет принять решение, по какому маршруту должен идти ваш трафик по умолчанию, и удалить один из маршрутов по умолчанию.

Если вам все еще нужен определенный трафик для выхода через «другой» адаптер, вы всегда можете гарантировать, что определенные IP-адреса / диапазоны сети достигаются определенной сетью, добавив статические маршруты следующим образом:

Допустим, у нас есть следующее: Гость с двумя виртуальными адаптерами, один в публичной сети, другой в частной; Публичный IP: 192.168.1.11 Публичная маска подсети 255.255.255.0 (/ 24) Публичный шлюз / маршрутизатор 192.168.1.1

Внутренний IP: 192.168.2.11 Внутренняя маска подсети 255.255.255.0 (/ 24) Внутренний шлюз / маршрутизатор 192.168.22.1

Если вы удалили IP-адрес шлюза по умолчанию из внутреннего сетевого адаптера, весь трафик, привязанный к сетям, ДРУГИМ, чем локально подключенные сети (192.168.1.0/24 и 192.168.2.0/24), будет проходить через общедоступный шлюз по адресу 192.168.1.1 (поскольку он единственный шлюз по умолчанию теперь настроен для гостя) ...

Однако что, если 192.168.100.0/24 был доступен только через маршрутизатор внутренней сети? Вы можете добавить следующее правило, чтобы сообщить гостю о маршрутизации этого конкретного диапазона IP-адресов через внутреннюю сеть:

маршрут добавить 192.168.100.0 маска 255.255.255.0 192.168.22.1

// TrX

Я выяснил, в чем проблема.

На моем сервере 4 сетевых адаптера, и когда я создал новую виртуальную сеть, я выбрал неправильный сетевой адаптер в списке внутри Virtual Network Manager. Как только я исправил это, я смог подключиться, и все работало должным образом.

Спасибо @trXuk за ваш ответ!