none
Как пробросить физическую сетевую карту в виртуальную машину RRS feed

  • Вопрос

  • На сервере Hyper-V есть 2 сетевые карты, 1-я смотрит в локальную сеть и работает с миром через роутер, 2-я смотрит напрямую в мир. Задача отдать 2-ю сетевую карту гостевой ОС в монопольное использование (для связи с миром) и запретить любые контакты с мира к серверу, при этом что бы сам сервер Hyper-V продолжил работать с локальной сетью и с миром ТОЛЬКО через 1-ю сетевую карту.

    Возможно ли такое организовать средствами Hyper-V, если да то как?

    27 января 2017 г. 9:19

Ответы

  • Добрый день.

    Если решать вашу задачу в лоб и жестко следуя вашей формулировке "в монопольное использование", то такой функционал есть в Windows Server 2016 и называется Discrete Device Assignment. Переданное виртуалке устройство будет на хосте находиться в режиме offline, то есть по сути будет монопольно отдано гостевой ОС.

    https://blogs.technet.microsoft.com/virtualization/2015/11/19/discrete-device-assignment-description-and-background/ 

    Если у вас предыдущие версии Windows Server, то вашу задачу тоже можно решить, но уж совсем монопольного использования не будет. 

    Итак, во-первых, вам нужно создать виртуальный коммутатор внешнего типа с привязкой к адаптеру, который смотрит наружу и при его создании поставить галочку "Включить технологию виртуализации SR-IOV". Грубо говоря это означает, что гостевая ОС будет получать прямой доступ к оборудованию, минуя всякие там "эмуляции". Обратите внимание, функция может не поддерживаться на некотором оборудовании.

    Во-вторых, вам нужно снять галочку "Разрешить управляющей операционной системе предоставлять общий доступ к этому сетевому адаптеру". Это означает, что сетевой адаптер, отданный виртуальному коммутатору, не будет для себя получать адрес и, следовательно, хост не будет смотреть в вашем случае наружу.

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


    • Изменено Egor Vasilev 27 января 2017 г. 9:35 - дополнил
    • Предложено в качестве ответа Vector BCOModerator 27 января 2017 г. 10:11
    • Помечено в качестве ответа Олег М 27 января 2017 г. 12:55
    27 января 2017 г. 9:31

Все ответы

  • Добрый день.

    Если решать вашу задачу в лоб и жестко следуя вашей формулировке "в монопольное использование", то такой функционал есть в Windows Server 2016 и называется Discrete Device Assignment. Переданное виртуалке устройство будет на хосте находиться в режиме offline, то есть по сути будет монопольно отдано гостевой ОС.

    https://blogs.technet.microsoft.com/virtualization/2015/11/19/discrete-device-assignment-description-and-background/ 

    Если у вас предыдущие версии Windows Server, то вашу задачу тоже можно решить, но уж совсем монопольного использования не будет. 

    Итак, во-первых, вам нужно создать виртуальный коммутатор внешнего типа с привязкой к адаптеру, который смотрит наружу и при его создании поставить галочку "Включить технологию виртуализации SR-IOV". Грубо говоря это означает, что гостевая ОС будет получать прямой доступ к оборудованию, минуя всякие там "эмуляции". Обратите внимание, функция может не поддерживаться на некотором оборудовании.

    Во-вторых, вам нужно снять галочку "Разрешить управляющей операционной системе предоставлять общий доступ к этому сетевому адаптеру". Это означает, что сетевой адаптер, отданный виртуальному коммутатору, не будет для себя получать адрес и, следовательно, хост не будет смотреть в вашем случае наружу.

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


    • Изменено Egor Vasilev 27 января 2017 г. 9:35 - дополнил
    • Предложено в качестве ответа Vector BCOModerator 27 января 2017 г. 10:11
    • Помечено в качестве ответа Олег М 27 января 2017 г. 12:55
    27 января 2017 г. 9:31
  • Благодарю за отличный и исчерпывающий ответ, вопрос решен.
    27 января 2017 г. 12:56