DNS-omleiding. Wat is er mis met CNAME. Zonebestandsinvoer

DNS (domein Naam systeem) is een belangrijk en nogal moeilijk te configureren onderdeel dat nodig is voor de werking van websites en servers. Veel gebruikers gebruiken DNS-servers van hun hostingprovider, maar het bezitten van uw eigen DNS-servers heeft enkele voordelen.

In deze tutorial leert u hoe u Bind9 installeert en configureert als een caching of forwarding DNS-server Ubuntu-server 14.04.

Vereisten

  • Begrip basistypen DNS-servers. Meer details vindt u op.
  • Twee machines, waarvan er minstens één Ubuntu 14.04 draait. De eerste machine wordt geconfigureerd als client (IP-adres 192.0.2.100) en de tweede als DNS-server (192.0.2.1).

Je leert configureren klantmachine om vragen via een DNS-server te verzenden.

Caching van DNS-server

Servers van dit type worden ook wel definieeraars genoemd omdat ze verwerken recursieve zoekopdrachten en kan meestal zoeken DNS-gegevens niet andere servers.

Wanneer een caching DNS-server het antwoord op een clientquery controleert, retourneert deze het antwoord aan de client en slaat het ook in de cache op gedurende de tijd die is toegestaan ​​door de TTL-waarde van de overeenkomstige DNS-records. De cache kan vervolgens worden gebruikt als bron van antwoorden op volgende verzoeken om de algehele verwerkingstijd van verzoeken te versnellen.

Bijna alle DNS-servers in uw netwerkconfiguratie zullen deze in de cache opslaan. Caching van DNS-server – goede keuze voor veel situaties. Als u niet afhankelijk wilt zijn van de DNS-servers van uw hostingprovider of andere openbare DNS-servers, kunt u uw eigen caching DNS-server instellen. Hoe korter de afstand van de DNS-server naar clientmachines, hoe minder tijd het kost om DNS-verzoeken te verwerken.

DNS-server doorsturen

Vanuit het perspectief van een klant ziet een forwarding DNS-server er bijna identiek uit als een caching-server, maar de mechanismen en werklast zijn compleet anders.

Een forwarding DNS-server heeft dezelfde voordelen als een caching-server. Het voert echter feitelijk geen recursieve zoekopdrachten uit. In plaats daarvan worden alle verzoeken doorgestuurd naar een externe resolutieserver en worden de resultaten vervolgens in de cache opgeslagen voor volgende verzoeken.

Hierdoor kan de omleidingsserver verzoeken uit zijn cache verwerken zonder recursieve verzoeken te hoeven verwerken. Deze server verwerkt dus alleen afzonderlijke verzoeken (omgeleide clientverzoeken) en niet de gehele recursieprocedure. Dit kan een voordeel zijn in omgevingen met beperkte externe bandbreedte, waar caching-servers regelmatig moeten worden gewijzigd, en in situaties waarin lokale verzoeken naar de ene server moeten worden gerouteerd en externe verzoeken naar een andere.

1: Installeer Bind op de DNS-server

Het Bind-pakket is te vinden in de officiële Ubuntu-repository. Werk uw pakketindex bij en installeer Bind met behulp van apt manager. U moet ook een aantal afhankelijkheden installeren.

sudo apt-get-update
sudo apt-get install bind9 bind9utils bind9-doc

Hierna kunt u beginnen met het instellen van de server. De caching-serverconfiguratie kan worden gebruikt als sjabloon voor het configureren van de doorstuurserver, dus u moet eerst de caching-DNS-server configureren.

2: Een caching DNS-server opzetten

Eerst moet u Bind configureren als een caching DNS-server. Deze configuratie dwingt de server om recursief te zoeken naar antwoorden op clientverzoeken op andere DNS-servers. Het zal achtereenvolgens alle overeenkomende DNS-servers doorzoeken totdat het een antwoord vindt.

Bind-configuratiebestanden worden opgeslagen in de map /etc/bind.

De meeste bestanden hoeven niet te worden bewerkt. Het hoofdconfiguratiebestand heet genaamd.conf (named en bind zijn twee namen voor dezelfde toepassing). Dit bestand verwijst naar de bestanden met de naam.conf.options, de naam.conf.local en de naam.conf.default-zones.

Om een ​​caching DNS-server te configureren, hoeft u alleen genaamd.conf.options te bewerken.

sudo nano genaamd.conf.options

Dit bestand ziet er als volgt uit (opmerkingen weggelaten voor de eenvoud):

opties (
map "/var/cache/bind";
dnssec-validatie auto;

luister-op-v6 (elke;);
};

Om een ​​cachingserver in te stellen, moet u een toegangscontrolelijst of ACL maken.

U moet de DNS-server beschermen die recursieve zoekopdrachten van aanvallers verwerkt. DNS-versterkingsaanvallen zijn vooral gevaarlijk omdat ze de server kunnen betrekken bij gedistribueerde denial-of-service-aanvallen.

DNS-versterkingsaanvallen zijn een manier om servers en websites neer te halen. Om dit te doen, proberen aanvallers openbare DNS-servers te vinden die recursieve zoekopdrachten verwerken. Ze vervalsen het IP-adres van het slachtoffer en sturen een vraag die een zeer groot antwoord naar de DNS-server zal sturen. In dit geval stuurt de DNS-server te veel gegevens terug naar de server van het slachtoffer als reactie op een klein verzoek, waardoor de beschikbare gegevens toenemen doorvoer indringer.

Het hosten van een openbare recursieve DNS-server vereist een zorgvuldige configuratie en beheer. Om te voorkomen dat de server wordt gehackt, configureert u een lijst met IP-adressen of netwerkbereiken die de server kan vertrouwen.

Voeg vóór het optieblok een acl-blok toe. Maak een label voor de ACL-groep (in deze tutorial heet de groep goodclients).

acl goede klanten (
};
opties (
. . .

Vermeld in dit blok de IP-adressen of netwerken die toegang hebben tot deze DNS-server. Omdat de server en client op het /24-subnet draaien, kunt u de toegang tot dit subnet beperken. U moet ook localhost en localnets deblokkeren, die automatisch verbinding maken.

acl goede klanten (
192.0.2.0/24;
lokalehost;
lokale netwerken;
};
opties (
. . .

U hebt nu een beveiligde client-ACL. U kunt beginnen met het instellen van de verzoekresolutie in het optieblok. Voeg er de volgende regels aan toe:

opties (
map "/var/cache/bind";
recursie ja;

. . .

Het optieblok schakelt recursie expliciet in en configureert vervolgens de optie allow-query om de ACL te gebruiken. U kunt ook een andere parameter gebruiken, zoals allow-recursion, om naar de ACL-groep te verwijzen. Wanneer recursie is ingeschakeld, definieert allow-recursion een lijst met clients die recursieve services kunnen gebruiken.

Als allow-recursion echter niet is ingesteld, valt Bind terug naar de allow-query-cache-lijst, vervolgens naar de allow-query-lijst en ten slotte naar de standaard localnets- en localhost-lijsten. Omdat we alleen een cachingserver opzetten (deze heeft geen eigen zones en stuurt geen zoekopdrachten door), zal de lijst met toegestane zoekopdrachten altijd alleen van toepassing zijn op recursie. Dit is het meeste algemene methode ACL-definities.

Sla het bestand op en sluit het.

Dit zijn alle instellingen die moeten worden toegevoegd aan het caching DNS-serverconfiguratiebestand.

Opmerking: Als u alleen deze wilt gebruiken DNS-type, ga verder met het controleren van de configuraties, start de service opnieuw en configureer uw client.

3: Een doorsturende DNS-server instellen

Als uw infrastructuur meer geschikt is voor een doorsturende DNS-server, kunt u de opstelling iets aanpassen.

Op op dit moment het bestand genaamd.conf.options ziet er als volgt uit:

acl goede klanten (
192.0.2.0/24;
lokalehost;
lokale netwerken;
};
opties (
map "/var/cache/bind";
recursie ja;
allow-query(goedeklanten;);
dnssec-validatie auto;
auth-nxdomeinnr; # conform RFC1035
luister-op-v6 (elke;);
};

Je kunt hetzelfde gebruiken ACL-lijst om de DNS-server te beperken tot een specifieke lijst met clients. Hiervoor is echter een kleine wijziging in de configuratie nodig, zodat de server niet langer recursieve queries probeert uit te voeren.

Wijzig de recursie niet in nee. De omleidingsserver ondersteunt nog steeds recursieve services. Om een ​​omleidingsserver in te stellen, moet u een lijst met cachingservers maken waarnaar verzoeken worden omgeleid.

Dit gebeurt in het options() blok. Eerst moet je erin creëren nieuw blok forwarders, waar de IP-adressen van recursieve naamservers waarnaar verzoeken moeten worden doorgestuurd, worden opgeslagen. IN in dit geval dit zijn de DNS-servers van Google (8.8.8.8 en 8.8.4.4):

. . .
opties (
map "/var/cache/bind";
recursie ja;
allow-query(goedeklanten;);
expediteurs (

8.8.8.8;

8.8.4.4;

};
. . .

De resulterende configuratie ziet er als volgt uit:

acl goede klanten (
192.0.2.0/24;
lokalehost;
lokale netwerken;
};
opties (
map "/var/cache/bind";
recursie ja;
allow-query(goedeklanten;);
expediteurs (
8.8.8.8;
8.8.4.4;
};
alleen vooruit;
dnssec-validatie auto;
auth-nxdomeinnr; # conform RFC1035
luister-op-v6 (elke;);
};

De laatste wijziging betreft de parameter dnssec. Bij huidige configuratie en afhankelijk van de instellingen van de DNS-servers waarnaar verzoeken worden omgeleid, kunnen de volgende fouten in de logboeken verschijnen:

25 juni 15:03:29 cache met de naam: fout (achtervolging van DS-servers) bij het oplossen van "in-addr.arpa/DS/IN": 8.8.8.8#53
25 juni 15:03:29 cache genaamd: fout (geen geldige DS) waarbij "111.111.111.111.in-addr.arpa/PTR/IN" wordt opgelost: 8.8.4.4#53

Om deze te vermijden, moet u de parameter dnssec-validation wijzigen in yes en dnssec expliciet inschakelen.

. . .
alleen vooruit;
dnssec inschakelen ja;
dnssec-validatie ja;
auth-nxdomeinnr; # conform RFC1035
. . .

Sla het bestand op en sluit het. De installatie van de doorstuur-DNS-server is voltooid.

4: Controleer de instellingen en start Bind opnieuw

Nu moet u ervoor zorgen dat de instellingen werken zoals verwacht.

Om de syntaxis te controleren configuratiebestanden, binnenkomen:

sudo genaamd-checkconf

Als er geen fouten in de bestanden voorkomen, geeft de opdrachtprompt geen uitvoer weer.

Als u een foutmelding krijgt, corrigeer deze dan en test opnieuw.

Vervolgens kunt u de Bind-daemon opnieuw starten om de instellingen bij te werken.

sudo service bind9 opnieuw opstarten

Vervolgens moet u de serverlogboeken controleren. Voer de opdracht uit op de server:

sudo staart -f /var/log/syslog

Open nu een nieuwe terminal en begin met het instellen van de clientmachine.

5: Clientconfiguratie

Log in op de clientcomputer. Controleer of de client is vermeld in de ACL-groep van de geconfigureerde DNS-server. Anders zal de DNS-server weigeren verzoeken van deze client te verwerken.

Bewerk het bestand /etc/resolv.conf zodat de server naar een naamserver verwijst.

Wijzigingen die hier worden aangebracht, blijven alleen bestaan ​​tot een herstart, wat geweldig is om te testen. Als u tevreden bent met de resultaten van de testinstellingen, kunt u deze instellingen permanent maken.

Open het bestand met sudo in een teksteditor:

sudo nano /etc/resolv.conf

In het bestand moeten de DNS-servers worden vermeld die worden gebruikt om zoekopdrachten op te lossen. Gebruik hiervoor de naamserverrichtlijn. Geef commentaar op alle huidige vermeldingen en voeg een naamserverregel toe die naar uw DNS-server verwijst:

naamserver 192.0.2.1
# naamserver 8.8.4.4
# naamserver 8.8.8.8
# naamserver 209.244.0.3

Sla het bestand op en sluit het.

U kunt nu een testverzoek verzenden om er zeker van te zijn dat het probleem correct wordt opgelost.

Je kunt hiervoor ping gebruiken:

ping -c 1 google.com
PING google.com (173.194.33.1) 56(84) bytes aan gegevens.
64 bytes van sea09s01-in-f1.1e100.net (173.194.33.1): icmp_seq=1 ttl=55 tijd=63,8 ms
--- google.com ping-statistieken ---
1 pakket verzonden, 1 ontvangen, 0% pakketverlies, tijd 0 ms
rtt min/avg/max/mdev = 63,807/63,807/63,807/0,000 ms

  • Vertaling

De oplettende lezer zal IPv6 in dit plaatje aantreffen


Mensen zijn vaak in de war over domeinen. Waarom werkt mijn site niet? Waarom is deze onzin kapot, niets helpt, ik wil gewoon dat het werkt! Meestal weet de vragensteller niets van DNS, of begrijpt hij de fundamentele ideeën niet. Voor velen is DNS een eng en onbegrijpelijk iets. Dit artikel is een poging om deze angst weg te nemen. DNS is Zojuist, als je een paar basisconcepten begrijpt.

Wat is DNS

DNS staat voor Domeinnaamsysteem. Het is een wereldwijd gedistribueerde sleutelwaardewinkel. Servers over de hele wereld kunnen u de waarde per sleutel geven, en als ze de sleutel niet kennen, zullen ze een andere server om hulp vragen.


Dat is het. Is het waar? U of uw browser vraagt ​​om een ​​waarde voor de sleutel www.example.com en ontvangt als antwoord 1.2.3.4.

Fundamentele dingen

Het grote voordeel van DNS is dat het een openbare dienst is en dat je in de servers kunt snuffelen als je het wilt uitzoeken. Laten we het proberen. Ik heb een domein petekeen.net, dat wordt gehost op de machine web01.bugsplat.info. De onderstaande commando's kunnen worden uitgevoerd vanaf opdrachtregel OS X ( oh, dat wil zeggen, macOS, - ongeveer. laan).


Laten we eens kijken naar de koppeling tussen naam en adres:


$ graaf web01.bugsplat.info

Het dig-commando is het Zwitserse zakmes van DNS-query's. Stijl, multifunctioneel hulpmiddel. Hier is het eerste deel van het antwoord:


; <<>> DiG 9.7.6-P1<<>> web01.bugsplat.info ;; globale opties: +cmd ;; Antwoord gekregen: ;; ->>KOP<<- opcode: QUERY, status: NOERROR, id: 51539 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

Er is hier maar één interessant detail: informatie over het verzoek zelf. Er staat dat we een record hebben opgevraagd en precies één antwoord hebben ontvangen. Hier:


;; VRAAG SECTIE: ;web01.bugsplat.info. IN EEN

dig-verzoeken A-records worden standaard geregistreerd. Een dit adres(adres), en dit is een van de fundamentele soorten records in DNS. A bevat één IPv4-adres. Er is een equivalent voor IPv6-adressen: AAAA. Laten we eens kijken naar het antwoord:


;; ANTWOORD SECTIE: web01.bugsplat.info. 300 IN EEN 192.241.250.244

De rest van het antwoord beschrijft het antwoord zelf:


;; Opvraagtijd: 20 msec;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WANNEER: vrijdag 19 juli 20:01:16 2013 ;; MSG-FORMAAT RCvd: 56

In het bijzonder wordt aangegeven hoe lang het duurde voordat de server reageerde, wat het IP-adres van de server was (192.168.1.1), op welke poort de diging was ingeschakeld (53, de standaard DNS-poort), wanneer het verzoek was voltooid en hoeveel bytes stonden in de reactie.


Zoals je kunt zien, gebeurt er veel bij een normale DNS-query. Elke keer dat u een webpagina opent, doet de browser tientallen van deze verzoeken, inclusief het downloaden van alle externe bronnen zoals afbeeldingen en scripts. Elke bron is verantwoordelijk voor ten minste één nieuw DNS-verzoek, en als DNS niet was ontworpen voor sterke caching, zou er veel verkeer worden gegenereerd.


Maar in dit voorbeeld is het niet duidelijk dat de DNS-server 192.168.1.1 contact heeft opgenomen met een aantal andere servers om een ​​simpele vraag te beantwoorden: “waar verwijst het adres web01.bugsplat.info naar?” Laten we een trace uitvoeren om meer te weten te komen over de hele mogelijke keten die dig "y zou moeten doorlopen als de informatie niet in de cache was opgeslagen:


$ dig +trace web01.bugsplat.info;<<>> DiG 9.7.6-P1<<>> +trace web01.bugsplat.info ;; globale opties: +cmd . 137375 IN NS l.root-servers.net. . 137375 IN NS m.root-servers.net. . 137375 IN NS a.root-servers.net. . 137375 IN NS b.root-servers.net. . 137375 IN NS c.root-servers.net. . 137375 IN NS d.root-servers.net. . 137375 IN NS e.root-servers.net. . 137375 IN NS f.root-servers.net. . 137375 IN NS g.root-servers.net. . 137375 IN NS h.root-servers.net. . 137375 IN NS i.root-servers.net. . 137375 IN NS j.root-servers.net. . 137375 IN NS k.root-servers.net. ;; Ontvangen 512 bytes van 192.168.1.1#53(192.168.1.1) in 189 ms info. 172800 IN NS c0.info.afilias-nst.info. informatie. 172800 IN NS a2.info.afilias-nst.info. informatie. 172800 IN NS d0.info.afilias-nst.org. informatie. 172800 IN NS b2.info.afilias-nst.org. informatie. 172800 IN NS b0.info.afilias-nst.org. informatie. 172800 IN NS a0.info.afilias-nst.info. ;; Ontvangen 443 bytes van 192.5.5.241#53(192.5.5.241) in 1224 ms bugsplat.info. 86400 IN NS ns-1356.awsdns-41.org. bugsplat.info. 86400 IN NS ns-212.awsdns-26.com. bugsplat.info. 86400 IN NS ns-1580.awsdns-05.co.uk. bugsplat.info. 86400 IN NS ns-911.awsdns-49.net. ;; Ontvangen 180 bytes van 199.254.48.1#53(199.254.48.1) in 239 ms web01.bugsplat.info. 300 IN A 192.241.250.244 bugsplat.info. 172800 IN NS ns-1356.awsdns-41.org. bugsplat.info. 172800 IN NS ns-1580.awsdns-05.co.uk. bugsplat.info. 172800 IN NS ns-212.awsdns-26.com. bugsplat.info. 172800 IN NS ns-911.awsdns-49.net. ;; Ontvangen 196 bytes van 205.251.195.143#53(205.251.195.143) in 15 ms

Informatie wordt weergegeven in een hiërarchische volgorde. Weet je nog hoe dig een punt invoegde. na de host, web01.bugsplat.info? Periode dus. dit is een belangrijk detail en het duidt de wortel van de hiërarchie aan.


Root DNS-servers worden onderhouden door verschillende bedrijven en landen over de hele wereld. Aanvankelijk waren het er maar weinig, maar het internet groeide en nu zijn het er dertien. Maar elk van de servers heeft tientallen of honderden fysieke machines die verborgen zijn achter één IP-adres.


Helemaal bovenaan de trace staan ​​dus de rootservers, elk geïdentificeerd door een NS-record. Een NS-record koppelt een domeinnaam (in dit geval het hoofddomein) aan een DNS-server. Wanneer u een domeinnaam registreert bij een registrar zoals Namecheap of Godaddy, maken zij NS-records voor u aan.


In het volgende blok kun je zien hoe dig een willekeurige rootserver heeft gekozen en om een ​​A-record voor web01.bugsplat.info heeft gevraagd. Alleen het IP-adres van de rootserver (192.5.5.241) is zichtbaar. Dus wat was precies de rootserver? Laten we het uitzoeken!


$ dig-x 192.5.5.241;<<>> DiG 9.8.3-P1<<>> -x 192.5.5.241 ;; globale opties: +cmd ;; Antwoord gekregen: ;; ->>KOP<<- opcode: QUERY, status: NOERROR, id: 2862 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;241.5.5.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 241.5.5.192.in-addr.arpa. 3261 IN PTR f.root-servers.net.

De vlag -x zorgt ervoor dat dig een reverse lookup uitvoert op het IP-adres. DNS reageert met een PTR-record dat het IP-adres en de host verbindt, in dit geval f.root-servers.net.


Terugkerend naar ons oorspronkelijke verzoek, retourneerde de rootserver F een andere set NS-servers. Het is verantwoordelijk voor het info-topniveaudomein. dig vraagt ​​een van deze servers om een ​​A-record voor web01.bugsplat.info en ontvangt als antwoord een andere set NS-servers, en vraagt ​​vervolgens een van deze servers record A voor web01.bugsplat.info. . En eindelijk krijgt hij antwoord!


Ugh! Er zou veel verkeer worden gegenereerd, maar bijna al deze records werden lange tijd in de cache bewaard door elke server in de keten. Uw computer slaat deze gegevens ook op in het cachegeheugen, net als uw browser. Meestal bereiken DNS-query's nooit de rootservers omdat hun IP-adressen vrijwel nooit veranderen ( “Waarschijnlijk hebben we het over een grote TTL voor records in hun database. Als het IP-adres van een DNS-server nooit is veranderd, betekent dit niet dat de database voor altijd in de cache wordt opgeslagen.”- ca. van rrrav). Topniveaudomeinen com, net, org, etc. zijn meestal ook zwaar in de cache opgeslagen.

Andere soorten

Er zijn nog een paar soorten die de moeite waard zijn om te weten. De eerste is MX. Het verbindt een domeinnaam met een of meer mailservers. E-mail is zo belangrijk dat het zijn eigen type DNS-record heeft. Hier zijn de MX-waarden voor petekeen.net:


$ dig petekeen.net mx;<<>> DiG 9.7.6-P1<<>> petekeen.net mx ;; globale opties: +cmd ;; Antwoord gekregen: ;; ->>KOP<<- opcode: QUERY, status: NOERROR, id: 18765 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;petekeen.net. IN MX ;; ANSWER SECTION: petekeen.net. 86400 IN MX 60 web01.bugsplat.info. ;; Query time: 272 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Fri Jul 19 20:33:43 2013 ;; MSG SIZE rcvd: 93

Houd er rekening mee dat het MX-record naar een naam verwijst en niet naar een IP-adres.


Een ander type waarmee u waarschijnlijk bekend bent, is CNAME. Ontcijfert als Canonieke naam(canonieke naam). Hij koppelt de ene naam aan de andere. Laten we eens kijken naar het antwoord:


$ dig www.petekeen.net;<<>> DiG 9.7.6-P1<<>> www.petekeen.net ;; globale opties: +cmd ;; Antwoord gekregen: ;; ->>KOP<<- opcode: QUERY, status: NOERROR, id: 16785 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.petekeen.net. IN A ;; ANSWER SECTION: www.petekeen.net. 86400 IN CNAME web01.bugsplat.info. web01.bugsplat.info. 300 IN A 192.241.250.244 ;; Query time: 63 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Fri Jul 19 20:36:58 2013 ;; MSG SIZE rcvd: 86

Het is meteen duidelijk dat we twee antwoorden hebben gekregen. De eerste zegt dat www.petekeen.net verwijst naar web01.bugsplat.info. De tweede retourneert het A-record voor die server. Je kunt CNAME zien als een alias (of alias) voor een andere server.

Wat is er mis met CNAME

CNAME-records zijn erg handig, maar er is een belangrijk punt: als er een CNAME is met een bepaalde naam, dan kun je niet nog een record met dezelfde naam maken. Geen MX, geen A, geen NS, niets.


De reden is dat DNS de vervanging zodanig uitvoert dat alle records op de locatie waar CNAME naar verwijst ook geldig zijn voor CNAME. In ons voorbeeld komen de gegevens voor www.petekeen.net en web01.bugsplat.info overeen.


Daarom kun je geen CNAME maken op een hoofddomein zoals petekeen.net, omdat hiervoor meestal andere records nodig zijn, zoals MX.

Verzoeken aan andere servers

Laten we ons voorstellen dat de DNS-configuratie beschadigd is. U denkt dat u het probleem heeft opgelost, maar wilt voor de zekerheid niet wachten tot de cache is vernieuwd. Met behulp van dig kunt u een verzoek indienen bij een openbare DNS-server in plaats van uw standaardserver, zoals deze:


$ dig www.petekeen.net @8.8.8.8

Het @-symbool met een IP-adres of host zorgt ervoor dat dig een verzoek indient bij de opgegeven server op de standaardpoort. U kunt de openbare DNS-server van Google of de bijna openbare Level 3-server gebruiken op 4.2.2.2.

Typische situaties

Laten we eens kijken naar typische situaties die veel webontwikkelaars kennen.

Domeinomleiding naar www

Vaak moet u het domein iskettlemanstillopen.com omleiden naar www.iskettlemanstillopen.com. Registrars zoals Namecheap of DNSimple noemen dit URL-omleiding. Hier is een voorbeeld uit het Namecheap-beheerderspaneel:



Het @-symbool geeft het hoofddomein iskettlemanstillopen.com aan. Laten we eens kijken naar het A-record voor dit domein:


$ dig iskettlemanstillopen.com ;; VRAAG SECTIE: ;iskettlemanstillopen.com. IN EEN ;; ANTWOORD SECTIE: iskettlemanstillopen.com. 500 IN EEN 192.64.119.118

Dit IP-adres is van Namecheap en er draait daar een kleine webserver die eenvoudigweg op HTTP-niveau omleidt naar het adres http://www.iskettlemanstillopen.com:


$ curl -I iskettlemanstillopen.com curl -I iskettlemanstillopen.com HTTP/1.1 302 Tijdelijk verplaatst Server: nginx Datum: vrijdag 19 juli 2013 23:53:21 GMT Inhoudstype: tekst/html Verbinding: keep-alive Inhoudslengte : 154 Locatie: http://www.iskettlemanstillopen.com/

CNAME voor Heroku of Github

Kijk eens naar de schermafbeelding hierboven. Op de tweede regel staat CNAME. In dit geval verwijst www.iskettlemanstillopen.com naar de applicatie die op Heroku draait.


$ heroku domeinen === warm-journey-3906 Domeinnamen warm-journey-3906.herokuapp.com www.iskettlemanstillopen.com

Het verhaal is vergelijkbaar met Github, maar daar moet je een speciaal bestand maken in de root van de repository en dit CNAME noemen. Zie documentatie. .dns Tags toevoegen

Met de dienst Domain Redirection kunt u regels instellen en de bezoeker die toegang heeft tot de domeinnaam omleiden naar het internetadres dat u opgeeft. De service ondersteunt het werken met alle domeinen. .

In dit artikel zullen we het hebben over de instellingen voor het werken met de service.

Domein instellen

De service werkt alleen als uw domein is gedelegeerd. Om een ​​domein te delegeren zijn DNS-servers nodig die internetgebruikers kunnen voorzien van informatie over uw domein (zone). Er moeten twee of meer van dergelijke servers zijn.

De Domain Redirection-service omvat al ondersteuning DNS. Als de dienst wordt besteld onder hetzelfde contract als het domein, worden de instellingen automatisch uitgevoerd bij het bestellen.

U kunt ook onafhankelijk DNS-servers opgeven, afhankelijk van het niveau van het domein waarvoor de omleidingsservice is besteld:

ns3-fwl2.site
ns4-fwl2.site
ns8-fwl2.site

ns3-fwl3.site
ns4-fwl3.site
ns8-fwl3.site

ns3-fwl4.site
ns4-fwl4.site
ns8-fwl4.site

ns3-fwl5.site
ns4-fwl5.site
ns8-fwl5.site

Zonebestandsinvoer

Als u DNS-servers gebruikt die zijn opgenomen in de Domain Redirection-service, worden de benodigde records automatisch ingevoerd.

Wanneer u uw eigen DNS-servers gebruikt, moet u A-records toevoegen aan het domeinzonebestand op de primaire DNS-server. Als onderdeel van één omleidingsservice moet hetzelfde IP-adres worden opgegeven voor het domein zelf en alle subdomeinen ervan.

Afhankelijk van het domeinniveau waarvoor de doorstuurservice wordt besteld, moeten de A-records er als volgt uitzien:

  • voor een domein op het tweede niveau typt u web-forward.ru:

    web-forward.ru. Een 109.70.27.4

  • voor een domein op het derde niveau typt u test.web-forward.ru:

    test.web-forward.ru. Een 109.70.27.5

  • voor een domein op het vierde niveau typt u forum.eng.web-forward.ru:

    forum.eng.web-forward.ru. Een 109.70.27.6

  • voor een domein op het vijfde niveau typt u www.forum.eng.web-forward.ru:

    www.forum.eng.web-forward.ru. Een 109.70.27.7

De Domain Redirection-service instellen

Omleiding kan worden ingeschakeld voor een domein en alle subdomeinen ervan, en u kunt ook maximaal tien individuele omleidingsregels configureren voor specifieke subdomeinen.

U kunt wijzigingen aanbrengen in de service-instellingen in Sectie voor klantenDienstenGegevens bekijken en wijzigen.

Voor elke omleidingsregel kunt u de volgende parameters opgeven:

1. Naam van het subdomein waarvoor de regel wordt geconfigureerd

U moet het subdomein opgeven van waaruit de omleiding zal plaatsvinden. U kunt het volgende opgeven:

  • de naam van het subdomein waarvoor u de omleiding wilt configureren. Er is een onbeperkt aantal nestniveaus toegestaan, maar de lengte van de invoer, inclusief punten, mag niet langer zijn dan 63 tekens;
  • “*” (sterretje) als u een algemene omleidingsregel moet instellen. Deze regel is van toepassing op alle subdomeinen waarvoor geen individuele regels zijn geconfigureerd.

2. Doorstuuradres

URL van de pagina waarnaar de bezoeker automatisch wordt doorverwezen.

3. Omleidingsmethode

U kunt een van de volgende omleidingsmethoden kiezen:

  • Tijdelijke of permanente omleiding

Tijdelijke omleiding (HTTP-antwoordcode “302 Tijdelijk verplaatst”). De HTTP 302-reactiecode vertelt clienttoepassingen (inclusief zoekmachines) dat de site tijdelijk is verplaatst. Standaard geïnstalleerd.

Permanente omleiding (HTTP-antwoordcode “301 permanent verplaatst”). De HTTP 301-reactiecode vertelt clienttoepassingen (inclusief zoekmachines) dat de site permanent is verplaatst.

In beide gevallen wordt de bezoeker automatisch doorgestuurd naar de URL van de pagina waarnaar werd doorverwezen. De keuze van de omleidingsmethode (301, 302) is in de praktijk alleen van belang voor zoekmachines.

  • Een adres in een frame maskeren

Bij deze omleidingsmethode bevindt de webpagina zich in een frame. Telkens wanneer op links in het frame wordt geklikt, zien bezoekers de domeinnaam waarvandaan de omleiding is gemaakt in de adresbalk van de browser. De tekst die u heeft opgegeven in de instellingen voor de omleidingsregel wordt weergegeven als de titel van de pagina.

Als u ervoor kiest om het adres in het kader te maskeren, houd er dan rekening mee dat:

  • Wanneer u op uw webpagina links naar andere bronnen instelt, moet u target=_top opgeven in de linktag. Anders wordt de webpagina van iemand anders ook in uw frame geopend en ziet de bezoeker uw domeinnaam in het URL-vak. Een voorbeeld van de juiste spelling van een link voor dit geval: RU-CENTER
  • Het echte adres van de webpagina waarnaar wordt doorverwezen, hoewel niet weergegeven in de URL-balk, kan door elke bezoeker eenvoudig worden bepaald.

4. Optie “Met padbesparing”.

Wanneer u probeert toegang te krijgen tot een pagina die zich bevindt op het domein waarvoor de regel wordt opgesteld, zal de omleiding plaatsvinden naar het omleidingsadres, waaraan het pad naar deze pagina zal worden toegevoegd..web-forward.ru, en vervolgens bij het openen de pagina dns.web-forward..