Сіздің виртуалды машинаңыз хостта мінсіз жұмыс істейтін ішкі жүйеге жете алмайды, ал хост маршруттау кестесіне ие клиент арқылы қосылған. Виртуалды адаптерді туннельге көпірмен қосу анық көрінеді және екі бөлек себептен сәтсіздікке ұшырайды. Екі машинаға да тиесілі сегментте аудару жұмыс істейді. Бағасы нақты: әрбір қонақ корпоративтік желідегі өз сәйкестігін жоғалтады.

Көпірдің жұмыс істей алмауының екі себебі

Клиенттің адаптері әдетте бір мекенжайды алып жүреді, көбіне /32, және клиент хосттың маршруттарын қайта жазады, сондықтан қарапайым шығыс трафигі туннельді қалайды. Хосттағы қолданбалар сол кестеге бағынады және жеке жүйеге жетеді. Көпірге қосылған қонақ кестені мүлдем оқымайды, өйткені оның кадрлары IP қабатынан төмен орналасқан коммутатор арқылы шығады.

Туннель адаптерін көпірге салу жолды теориялық түрде шешер еді, ал драйвер мұны қабылдамайды. Windows 10 сонымен қатар бір ғана көпір құрылғысына рұқсат береді және жұмыс станциясының екі ішкі желі арасында жіберуіне мүмкіндік беретін маршруттау рөлін бермейді. Қалғаны — дереккөзді аудару. Қонақтың трафигін хосттан келе жатқандай етіп көрсетіңіз, сонда хосттың өз шешімдері оны туннельге апарады, қонақ өзіндік бола алмайтын маршрутқа мұқтаж болмайды.

Хостқа тиесілі сегмент жасаңыз

Виртуалды желі редакторында басқа жерде маршруттамайтын префикске, мысалы 172.28.90.0/24, VMnet3 сияқты host-only желісін қосыңыз. Хост сол адаптерде 172.28.90.1 мекенжайын алады, ал қонақ сол коммутаторға қосылады. Сол сегментте гипервизордың DHCP-ін өшіріңіз, сонда оны бір мекенжай қызметі иеленеді.

Оның үстіне бірдеңе салмас бұрын Windows интерфейсті көретініне көз жеткізіңіз, өйткені бүкіл жоба сол адаптердің қарапайым болуына байланысты:

Get-NetAdapter | Format-Table Name, InterfaceDescription, Status
Get-NetIPAddress -AddressFamily IPv4 | Where-Object PrefixLength -eq 24

host-only адаптері сонда кез келген физикалық адаптер сияқты көрінеді. Ешнәрсеге қосылмайтын туннель адаптерінен дәл осымен ерекшеленеді.

Қонақтың префиксін аударыңыз

Арнайы құқықты сессия ашып, префиксті аударыңыз. Алдымен ненің бар екенін тексеріңіз, өйткені контейнер орындау орталары мен гипервизорлар өз аудармаларын орнатады, ал қатесін жою басқа өнімді бұзады.

Get-NetNat | Format-Table Name, InternalIPInterfaceAddressPrefix, Active
New-NetNat -Name "LabGuestEgress" -InternalIPInterfaceAddressPrefix 172.28.90.0/24

Содан кейін қонақты сол префикстегі статикалық мекенжаймен, шлюзі ретінде 172.28.90.1-мен және туннель хостқа беретін шешуші мекенжайлармен баптаңыз. Аудару пакеттерді жібереді және қонаққа DNS туралы ештеңе үйретпейді, сондықтан жергілікті маршруттауышта қалған қонақ жария атауларды шешеді және әрбір ішкі атауда сәтсіздікке ұшырайды.

Алдымен бірінші секірісті, содан кейін бағаны тексеріңіз

Ең жақын шекараны сынаңыз қолданбаны сынамас бұрын. Хосттың шлюзінде тоқтаған із аудару болып жатпағанын білдіреді, ал хосттан әрі тоқтаған із туннельдің өшкенін немесе қарсы жақ аударылған мекенжайдан бас тартқанын білдіреді.

tracert -d 172.20.31.10
nslookup intranet.corp.example
Get-NetNatSession -NatName "LabGuestEgress"

Туннель қосылған кезде хосттың сол мақсатқа өз қатынасымен салыстырыңыз. Егер хост сәтті болып, қонақ болмаса, ақау аударуда немесе қонақтың шлюз параметрінде, байланыста емес.

Содан кейін бұл айырбасты қабылдаңыз. Корпоративтік жүйелер енді әр қонақ үшін бір мекенжайды көреді, сондықтан құрылғы сертификаттары мен әр құрылғының күйін тексеру оларды ажырата алмайды, ал кейбір саясаттар мұны мүлдем тыйым салады. Түсіп қалу тәртібін де шешіңіз, өйткені аударылған трафик туннель істен шыққанда кәдімгі интернет жолына түсуі мүмкін, егер сол префиксті хосттың firewall-ында бұғаттамасаңыз.

Қатысты мақалалар