Зашто SRV запис помаже само клијенту који га сам пита
DNS може да објави циљ услуге и порт, али VPN клијент мора сам да изведе претрагу. Пронађите ознаку коју пита пре него што било шта додате у зону.
Додавање SRV записа у вашу зону не учи ниједан VPN клијент да га тражи. Клијент мора да зна ознаку, да одлучи да пошаље упит и да поступи према ономе што се врати, а DNS не може да пружи прва два од тога. Зато је већина неуспелих SRV планова клијентски проблем у DNS оделу. Прво прочитајте понашање клијента при откривању, а затим објавите само ознаку коју заиста пита.
Запис који нико не пита не може никоме да помогне
SRV објављује локацију услуге; он је не најављује. Ништа не гура запис према клијенту, и ниједан резолвер не нуди име за које се никада није питало. Претрага почиње када апликација одлучи да је изведе, па ознака мора да дође из документације производа или из посматрања софтвера на мрежи. Где клијент нема корак откривања, запис мења зону и ништа друго.
Зато један производ на мрежи може да почне да ради док други није погођен истом променом. Променљива је софтвер, а DNS сервер ради тачно оно што му је речено. Прочитајте зону поново након измене, јер се погрешно откуцана ознака лако скрива међу записима који сви изгледају исто.
Прочитајте поља пре него што их упишете
Запис носи четири вредности и свака одговара на друго питање: приоритет поређа циљеве које клијент може да испроба, тежина дели оптерећење међу циљевима једнаког приоритета, порт именује транспортни порт, а циљ именује хост. Спецификација такође дозвољава да циљ . значи да је услуга намерно недоступна, што је користан одговор, а не покварен.
Ниједно од тих поља не носи акредитиве, политику сертификата или верзију апликације, а клијент који игнорише тежину ипак се повезује, само без предвиђене равнотеже. Циљ треба сопствене записе адреса и треба да буде канонско име, а не алијас. Објављивање записа који показује на хост без слушаоца ствара грешку повезивања која се чита као квар DNS-а, а то је најскупља врста обмане. Објавите цео ланац или ништа од њега.
Пронађите ознаку коју клијент заиста шаље
Утврдите ознаку на основу доказа, а не нагађања о имену производа. Или документација наводи име услуге, или снимак показује упит који клијент шаље при покретању. Оба пута завршавају на истом месту: тачно име и тип за проверу код резолвера.
dig +short SRV _vpn._tcp.gw.example
dig +short A edge2.gw.example
tcpdump -ni any udp port 53Упоредите одговор са записом који сте објавили, знак по знак, јер су доње црте и тачка на крају део имена. Празан одговор на упит који је заиста послат указује на зону, док потпуно одсуство упита указује на клијента, а ти налази вас воде различитим тимовима. Прави одговор изгледа као ред испод, где приоритет 20 губи од сваког записа нижег приоритета и клијент бира порт 8443 на наведеном циљу.
_vpn._tcp.gw.example. 600 IN SRV 20 10 8443 edge2.gw.example.Циљ такође мора да постоји
Циљ који се разрешава није исто што и услуга која одговара. Проверите записе адреса за циљ, затим проверите да нешто слуша на објављеном порту и протоколу. TCP запис који показује на слушаоца само за UDP је несклад који никакво уређивање зоне не поправља. Држите TTL кратким док је циљ нестабилан, и продужите га кад име престане да се креће.
Клијенти који заиста изводе откривање разликују се у томе колико записа поштују. Неки користе само приоритет, неки третирају тежину као савет, а понеки игноришу порт и претпостављају подразумевану вредност. Те разлике припадају вашим белешкама уз ознаку, јер објашњавају понашање које иначе изгледа као квар резолвера.
Откривање није аутентикација
SRV одговор каже где да се повежете, и не каже ништа о томе коме да верујете кад стигнете. Оставите проверу сертификата и провере идентитета сервера у клијенту тачно какве су биле, јер запис који неко други може да кривотвори не сме да постане одлука о поверењу. DNS одговори се кеширају и мењају од стране онога ко контролише зону, што их чини лошим местом за кодирање политике.
За клијента без подршке за откривање, поделите профил или URL приступника који прихвата, и забележите који производ користи који метод. Та белешка спречава следећег администратора да дода запис и очекује да ће радити свуда. Спецификација SRV описује избор међу циљевима, а читање тога као механизма ауторизације је начин на који користан запис постаје претпоставка о безбедности. Објављујте намерно, наведите ознаку у документацији и третирајте клијента као компоненту која одлучује има ли ишта од тога смисла.