TLDR ; Mam działający system DDNS ddns.example.com, chcę umożliwić mu przesyłanie żądań host1.example.comdo moich hostowanych lokalnie komputerów.
Mam więc domenę publiczną, powiedzmy example.comw Domenach Google. Mam router obsługujący DDNS, który, powiedzmy, ma dynamiczny adres IP, który jest obecnie ustawiony na 1.2.3.4.
Wskazuję routerowi, aby poprawnie rozpoznał moje konto GD, a w GD ustawiam ddns.example.comdopasowanie do mojego routera. W tym momencie wszystko działa i widzę, że na przykład host1 w mojej sieci lokalnej, którego port 1234jest przekierowany, można zobaczyć pod adresem ddns.example.com:1234.
Zamiast tego chcę zrobić, aby móc pisać host1.example.com:1234/a/b?ci łączyć się z host1:1234/a/b?cmoją siecią lokalną.
Uważam, że powinno to być możliwe poprzez:
Dodaję symbol wieloznaczny od
*.ddnsdoddns.example.comw Domenach Google.Dodaj
CNAMEodhost1do dohost1.ddns.example.comw Domenach Google.Skonfiguruj dynamiczny serwer DNS + klient w
host2mojej sieci lokalnej z portem 53 z przekierowaniem portów przez mój router (mam serwer DNS, który jest w stanie uwzględnić bieżący zewnętrzny adres IP w autorytatywnych odpowiedziach, na których jest zainstalowanyhost2).Dodaj odpowiednie wpisy do mojego lokalnego klienta / serwera DDNS (
host2):Dodaj
NSrekordns.ddns.example.comdohost2.Dodaj
Arekord dynamicznyns.ddns.example.comdohost2.Dodaj
Arekord dynamicznyservices.ddns.example.comdohost2.
Przekierowuję port
1234zhost1mojego routera.
Oto, co moim zdaniem powinno się wydarzyć:
Wpisuję host1.example.com/a/b?c:
Prośba do NS
com.,example.com.a następnieApoprosić ohost1.host1.example.comzostaje przekierowany dohost1.ddns.example.comKlient prosi o
NSzapis zddns.example.com. Odpowiedź jest1.2.3.4.Klient prosi o adres IP
host1.ddns.example.com. Odpowiedź jest1.2.3.4.Klient łączy się z
1.2.3.4:1234/a/b/?cktórym jest hostowanyhost1:1234/a/b/?c.
diging host1.example.comdomena zwraca CNAMErekord host1.ddns.example.com. Jednak diging host1.ddns.example.comzwraca domeny Google NS. Zrozumiałem, że CNAMEzapis będzie w zasadzie oznaczał, że każde żądanie zapisu zostanie przekazane. Więc oczekiwać, że robi digdla host1.ddns.example.comdopasuje wieloznaczny, stają się CNAMEprzekierowanie ddns.example.com, co z kolei będzie w stanie obsłużyć resztę rekursji. Czego tu brakuje?
example.comlub ddns.example.com? To trochę niejasny czasami w swoim pytaniu, i bardzo ważne jest, aby konieczności skutecznego i prawidłowego routingu ... Czy urządzenia, które powinny odpowiadać ddns.example.comi hostN.ddns.example.comna tej samej sieci czy każdy ma inny zewnętrzny adres IP? ... Pytam, ponieważ Myślę, że może ci brakować, że nazwy są rozwiązywane w odwrotnej kolejności , co oznacza, że możesz po prostu wskazać, gdzie znaleźć *.ddns.example.comi pozwolić serwerowi przejść dalej.