Как да достигнете частна услуга през VPN във виртуална машина
Изпълнете двата пътя поотделно: VPN на госта през NAT и път само за хоста, който Mac използва. Пренасочете един порт, проверете го, после запишете плана за откат.
Приемайте госта и Mac като две отделни мрежи, свързани с една тясна врата. Виртуалната машина пази своя VPN клиент и собствения си път към интернет; Mac достига точно една услуга през адаптер само за хоста и един пренасочен порт. Нищо друго не бива да преминава. Следвайте стъпките по ред и спирайте, когато някоя се провали, защото всяка следваща стъпка предполага, че предишните са издържали.
Запишете двата пътя, преди да промените каквото и да е
На госта ipconfig /all показва адаптера, който носи VPN транспорта, и адреса, който е получил от DHCP на виртуалната мрежа. На Mac запишете виртуалния интерфейс, който хипервизорът е създал за този сегмент; при VMware Fusion устройството само за хоста обикновено е vmnet1, а Parallels дава свое име. Отбележете кой раздава адресите там, после запишете всичко, защото подмрежата само за хоста често се преназначава при пресъздаване на виртуалната мрежа. Проверявайте мрежовия режим на виртуалната машина в хипервизора, а не в паметта си за него. Споделен режим или режим NAT за адаптера, гледащ към интернет, плюс режим само за хоста за адаптера, гледащ към Mac, е подредбата, която тези стъпки предполагат.
Два адаптера, две цели. Смесването им, така че един адаптер да обслужва и Mac, и интернет, е това, което превръща тясната врата в маршрутизиран път.
Първо потвърдете собствения VPN на госта
Стартирайте клиента вътре в Windows и потвърдете, че приключва, с какъвто тест доставчикът документира. Не продължавайте, докато гостът сам не достигне частната услуга, защото проблем с пренасочването, насложен върху счупен тунел, има две причини и не дава полезно съобщение за грешка. Запишете частния адрес, в който услугата се разрешава отвътре в госта. Този адрес е единственото, което правилото за пренасочване трябва да посочи.
Ако клиентът прокарва пълен тунел, адаптерът само за хоста все още носи локален трафик, но проверете, че частната дестинация не е уловена от тунела по начин, който променя адреса ѝ. Профилът с разделено тунелиране прави това по-просто и си струва да бъде поискан от този, който притежава VPN.
Добавете пътя само за хоста и го тествайте отделно
Прикачете към госта адаптер само за хоста, дайте му статичен адрес в подмрежа, която нищо друго не използва, и потвърдете, че Mac може да го пингува. Тествайте с включен VPN и с изключен, защото адресът трябва да издържи и в двата случая. Гост, който отговаря само докато тунелът му е вдигнат, има проблем с маршрутизацията, който още не сте открили.
Windows може да класифицира новия адаптер като публична мрежа, което по подразбиране блокира входящия трафик. Задайте профила, преди да отладите каквото и да е друго.
Пренасочете един порт, а не подмрежата
Предпочитайте един пренасочен порт пред общото IP пренасочване. Windows предоставя netsh interface portproxy, който пренасочва слушащ порт към целеви хост и порт, и изисква услугата IP Helper да работи.
Винаги задавайте listenaddress на адреса само за хоста. Пропускането му обвързва всички интерфейси, което излага услугата на каквато и мрежа да се окаже виртуалната машина. Добавете правило на защитната стена, ограничено до интерфейса само за хоста и този един порт, така че слушателят и разрешението да съвпадат. Приложение, съобразено с прокси, може вместо това да поиска малко прокси вътре в госта, което прекратява връзката и не се нуждае от обратен маршрут към Mac. Избирайте проксито, когато протоколът позволява, защото то се проваля затворено по своята конструкция.
Проверете, после запишете плана за откат
От Mac разрешете частното име, изпълнете предвидената операция, после спрете VPN на госта и потвърдете, че операцията се проваля, вместо тихо да падне обратно. Тази последна проверка е тази, която доказва, че пътят е този, който сте изградили. Запишете коя самоличност вижда шлюзът и кой има право да използва пренасочването.
Запишете отката като три стъпки: премахнете записа portproxy, премахнете правилото на защитната стена, отделете адаптера само за хоста. После го изпълнете веднъж, преди да ви потрябва, и потвърдете, че собственият VPN на госта все още работи след това. Ако организацията ви изисква всеки Mac да се регистрира независимо, спрете тук и използвайте вместо това онзи модел, защото споделена точка за пренасочване концентрира достъпа върху един гост. Във всеки случай сложете адресите и порта в записа за промени; следващият човек няма да иска да ги открива наново.