То што је адаптер 1 први на листи хипервизора је само редослед приказивања, а табела рутирања госта га не чита. Пут одређују префикс, метрика и свако правило политике које важи пре оба. Зато додавање мостовног адаптера на лабораторијску VM може створити другу подразумевану путању, док се стари NAT интерфејс и даље приказује као присутан и нумерисан као други. Резултат је VM која понекад користи тунел, а понекад не, без икакве промене конфигурације која би то објаснила.

Три услова одређују путању

Три услова су: који је префикс конкретнији, шта метрике раде када су префикси једнаки и која правила је гост применио после промене хардвера. На сваки се може одговорити једном командом, и ниједан не укључује нумерисање хипервизора.

Управо та последња тачка је одлука: ако не можете да кажете који префикс побеђује за сопствену адресу VPN крајње тачке, немате политику рутирања, имате топологију која данас случајно ради.

Први услов: који префикс побеђује

Рута ка 10.8.0.0/24 побеђује подразумевану руту за адресу унутар ње, без обзира на метрике и без обзира на редослед адаптера. Зато VPN клијент који инсталира конкретну руту наставља да ради и када се појави други адаптер са нижом метриком: конкретност побеђује пре него што се размотри цена. Проверите са ip route show табелу за коју мислите да је у употреби, и са ip route get 203.0.113.9 одговор који би језгро заиста дало за конкретно одредиште.

Сопствена адреса крајње тачке је најважнији тест. Ако се адреса VPN сервера разрешава кроз новододати мостовни адаптер, тунел можда никада неће бити успостављен, или ће бити успостављен и затим изгубити сопствену транспортну путању. Питајте конкретно за ту адресу уместо да претпоставите да је интерфејс тунела одговор.

Други услов: шта метрика чини и шта не чини

Њена улога је ужа него што већина очекује. Метрике решавају једнакост између рута ка истом префиксу; оне не дозвољавају широј рути да победи конкретнију. При једнакости се преферира мањи број, а различити оперативни системи броје у супротним смеровима, зато савети прекопирани између Linux и Windows често противрече сами себи.

У госту ip route show штампа метрику поред сваке руте, а Get-NetRoute у Windows-у штампа InterfaceMetric плус метрику руте. Читајте обоје, јер ефективна предност може бити збир, а не једно поље. Ако постоје две подразумеване руте, то је налаз: гост има два излаза, а која побеђује зависи од бројева које промена хардвера може да промени.

Трећи услов: шта је гост заиста применио

Конфигурација није исто што и примењено стање. Имена интерфејса нису стабилна при променама хардвера на свакој платформи, а конфигурација која се поклапала по имену сада можда не важи ни за шта.

Проверите примењено стање, а не предвиђено. ip -br link приказује интерфејсе који сада постоје, а на домаћину са NetworkManager-ом nmcli connection show приказује који је профил везан за који уређај. Профил који није успео да се веже оставља интерфејс укључен без адресирања, што изгледа као проблем рутирања, а јесте проблем именовања. Враћене слике стања то погоршавају, јер сачувано стање госта може да указује на идентитете адаптера које нови хардвер више не пружа.

Одржите топологију лабораторије поновљивом

Сачувајте предвиђене прикључке виртуелне мреже уз конфигурацију госта, тако да мапирање од улоге до адаптера буде записано, а не изведено из позиције на листи.

Обично су довољне четири улоге за именовање: приватна веза, управљање, спољни транспорт и тунел. Свака треба у датотеци да одговара конкретном адаптеру и конкретном интерфејсу госта.

Затим тестирајте стварну апликацију после промене хардвера, рестартовања или враћене слике стања и укључите руту ка VPN крајњој тачки у тај тест. Ако VM пролаза треба да буде једини излаз, проверите да тестна VM нема ненамерну другу подразумевану путању, јер мостовни адаптер додаје управо другу подразумевану путању. Тестирајте из госта, не из конзоле хипервизора, јер се њих двоје могу не слагати око тога који је интерфејс који.

Документација за мреже VirtualBox-а описује режиме адаптера и на шта се сваки повезује, и то је део који вреди прочитати пре додавања другог. Лабораторија која одређује који адаптер служи којој улози чини промену руте објашњивом. Лабораторија која се ослања на нумерисање хипервизора чини сваку промену експериментом.

Повезани чланци