Skonfiguruj serwer DNS, aby zwracał ten sam adres IP dla wszystkich domen


11

Chciałbym skonfigurować serwer nazw, który zwróci ten sam adres IP (rekord „A”) dla dowolnej dowolnej nazwy hosta. Na przykład:

  • przyklad.com
  • subdomena.example.com
  • someotherdomain.com
  • anyotherdomain.co.uk

wszystkie powinny zwrócić ten sam adres IP. Czy można to zrobić za pomocą BIND? Czy istnieje alternatywa dla BIND, która może to zrobić?

Odpowiedzi:


20

Z BIND potrzebujesz do tego fałszywej strefy rootowania. W named.confumieścić następujące:

zone "." {
    type master;
    file "/etc/bind/db.fakeroot";
};

Następnie w tym db.fakerootpliku potrzebujesz czegoś takiego:

@ IN SOA ns.domain.com. hostmaster.domain.com. ( 1 3h 1h 1w 1d )
  IN NS <ip>
* IN A <ip>

Przy tej konfiguracji BIND zwróci ten sam adres IP dla wszystkich Azapytań.


Działa dobrze, ale główna domena nie została rozwiązana? Jakieś pomysły? np .: testdomain.com
opc0de

To działa całkiem dobrze, do diabła. Jedynym problemem jest to, że zapytania o rekordy NS dla domeny mogą eksplodować - mianowicie, że obsługuje rekordy NS dla .strefy, która nie będzie odpowiadać na zapytania NS dla danej domeny. (Ale inaczej to działa, by służyć właściwej płycie A)
Thomas Ward

jakikolwiek sposób na serwer DNS Microsoft?
deadManN

8

Według strony podręcznika dnsmasq

address=/#/1.2.3.4

powinien załatwić sprawę.


Dzięki! To było takie proste. Dnsmasq jest zdecydowanie łatwiejszy do skonfigurowania niż BIND.
balex i

Czy wiesz, czy w dnsmasq istnieje również sposób użycia znaku wieloznacznego z rekordami MX?
balexand

Wygląda mx-hosti mx-targetzrobi to.
Gerald Combs

1
Czy wiesz jak? Korzystanie z symboli wieloznacznych z mx-hosti mx-targetnie jest udokumentowana w manualu i nie mogę zmusić go do pracy. Próbowałem użyć podobnej notacji do addressopcji ( #znak). Udało mi się uzyskać symbole wieloznaczne działające z obydwoma Ai MXkorzystające z BIND, korzystając z sugestii Olivera, ale tak naprawdę wolałbym używać dnsmasq. Dzięki!
balex i

dnsmasq jest bardziej rekurencyjnym serwerem nazw niż autorytatywnym (może być używany równolegle, ale najwyraźniej nie jest to jego główny cel)
Patrick Mevzek

1

Możesz wykonać dopasowanie wieloznaczne w bind.

*.example.com.        IN      A       192.0.2.45

Należy to zdefiniować w nazwanym pliku konfiguracyjnym dla domeny. Bądź ostrożny, jeśli musisz zdefiniować inne Arekordy dla domeny.


3
Której części „wszystkich domen” brakowało?
ceejayoz

1

Możesz także użyć narzędzia fakedns . Użycie jest bardzo proste - będzie wiązać się pisać 53 UDP i służyć samego IP do wszystkich pyta . Podajesz adres IP jako parametr wiersza polecenia. Zdecydowanie najłatwiejsze rozwiązanie. Wymaga uruchomienia Pythona.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.