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ć?

Balexand
źródło

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ń.

Oliver
źródło
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ę.

Gerald Combs
źródło
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.

Francois Wolmarans
źródło
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.

Konrad Gajewski
źródło