Endpoint-от се наоѓа во 10.0.8.0/24, па resolver-от мора да биде 10.0.8.2. Ова е резонирањето што најчесто го слушам и погрешно е двапати. Route 53 Resolver одговара на примарниот IPv4 опсег на VPC плус два, што за VPC 10.0.0.0/16 е 10.0.0.2, без оглед која подмрежа ја користи endpoint-от. Втората грешка е потивка: ставање на точната адреса во endpoint-от не значи дека оперативниот систем на клиентот некогаш ќе го праша нешто. Двете грешки даваат ист симптом: разрешувањето на имиња работи кај некои клиенти, а кај други не.

Митот започнува со асоцијацијата на подмрежата

Асоцијацијата се однесува на тоа каде живеат еластичните мрежни интерфејси за клиентските врски, а не на тоа која resolver адреса постои. Подмрежите на endpoint-от им даваат на клиентите адреса внатре во VPC, и секоја од нив не носи свој resolver.

Кога ќе ги разделите тие две идеи, аритметиката престанува да биде мистериозна и решавањето проблеми се префрла на клиентот, каде што навистина завршуваат повеќето од овие случаи.

Пресметајте ја адресата од примарниот опсег на VPC

Земете го примарниот IPv4 CIDR на VPC и додадете два на мрежната адреса. 10.0.0.0/16 дава 10.0.0.2, 172.31.0.0/16 дава 172.31.0.2, а VPC со секундарен опсег го задржува resolver-от на примарниот. Подмрежа 10.0.8.0/24 внатре во тој VPC не го поместува. Запишете ја адресата до ID-то на VPC пред да го допрете endpoint-от, зашто бројот е својство на VPC, а не на врската.

VPC одговара и на link-local адресата 169.254.169.253. Таа адреса е достапна од внатрешноста на VPC, но не е општа рутирана дестинација за лаптоп на другата страна од тунел.

Значи има две валидни resolver адреси, и ниту една од нив не е подмрежата плус два.

Што прави поставката на endpoint и што не

Endpoint-от на Client VPN има полиња за DNS сервер, и каде конзолата нуди опција за VPC resolver таа ја пополнува истата идеја. Нивното поставување менува што услугата им предава на клиентите при воспоставување на врската. Тоа не менува што прави неконтролиран OpenVPN клиент со таа вредност, бидејќи клиентот сепак мора да ја примени на оперативниот систем. Од овој јаз доаѓа «работи на мојот Mac, но не на Linux машината».

На Linux интеграцијата на resolver-от му припаѓа на менаџерот за врски, а не на корисникот. Рачното уредување на /etc/resolv.conf докажува дека адресата работи за една сесија, а потоа исчезнува при повторно поврзување — затоа толку многу поправени случаи се враќаат следното утро.

Проверете го активниот resolver на клиентот по поврзувањето, а не страницата за конфигурација на endpoint-от.

Split tunneling може да го победи точниот resolver

Со split tunneling се користат само рутите втурнати во тунелот. Ако адресата на resolver-от не е покриена со рута, барањето излегува преку локалниот интерфејс и одговара вашиот домашен рутер. Адресата во endpoint-от сè уште е точна и пребарувањето сè уште не успева. Додајте рута за resolver-от, па тестирајте повторно.

Преклопувачките локални опсези го даваат истиот резултат на полош начин: барањето добива одговор, само од погрешен сервер.

Не отворајте security groups за адресата на Amazon DNS

Инстинктот кога пребарувањата истекуваат е да додадете правило што дозволува UDP 53 до адресата на resolver-от. AWS документира дека security groups и мрежните ACL не го филтрираат сообраќајот на Amazon DNS како што го филтрираат сообраќајот кон сопствена DNS инстанца. Отворањето на тие правила не менува ништо за VPC resolver-от и ја проширува границата без причина. Resolver што самите го водите е друг случај и навистина му требаат сопствени правила.

Ако и двете се појавуваат во вашиот дизајн, проверете кон кое клиентот навистина е насочен пред да уредите било какво правило.

Проверете ја патеката, потоа измерете нешто друго

Разрешете јавно име, разрешете приватно име регистрирано во приватна хостирана зона поврзана со VPC, и прочитајте го активниот resolver на клиентот помеѓу двете. Оваа низа го одвојува «адресата на resolver-от е погрешна» од «зоната не е поврзана» и од «клиентот ја игнорираше поставката». Секое има различно решение и ниту едно не е проблем со пропусната моќ.

Успешното пребарување не кажува ништо за постојаната брзина на пренос, затоа држете ги тие два разговора одвоени кога известувате.

Поврзани статии