En introduksjon til å lære og bruke DNS-poster

Hva du skal skape

Introduksjon

Domenenavnssystemet (DNS) gir i hovedsak en telefonkatalog for Internett. Du vil kanskje skrive inn apple.com til nettleseren din for å kjøpe iPhone-tilbehør, men hvordan vil forespørselen din nå Apples webserver på IP-adressen 17.172.224.47? Det er det domenenavnetes registreringssystem gjør for oss.

Hvis du er en bedriftseier eller WordPress blogger, har du sikkert blitt fortalt å konfigurere A- og CNAME-postene. Eller den tiden du prøvde å flytte din e-post, ble du fortalt å endre MX-posten din. Eller, en kule webtjeneste ba deg om å sette opp en TXT-plate før den ville fungere med deg. Hva er alt dette for, og hvorfor er det så forvirrende?

I denne opplæringen vil jeg introdusere deg til internettets DNS-system og veilede deg gjennom konfigurering av poster for de vanlige kravene til hverdagsteknikkkonsulenter og bedriftseiere.

Hvis du har spørsmål eller kommentarer til opplæringen, vær så snill å poste dem under i kommentarene. Du kan også følge meg på Twitter og meld meg der.

Lære om DNS-posttyper

Navn servere

Når du kjøpte domenenavnet ditt, har registraren din konfigurert standard DNS-poster for deg og gitt navnetjenere (NS) til dem. Du må ha en navneserver (som ofte speiles i par og tripler for redundans, for eksempel ns1.yourregistrarserver.com, ns2.yourregistrarserver.com) for å fortelle Internettets DNS-katalog de numeriske IP-adressene til webservere og -tjenester.

Her er et eksempel på min NS-poster for nettstedet mitt, JeffReifman.com:

Alle innstillingene vi vil beskrive nedenfor vil bli konfigurert av deg på din NS-vert og publisert av deres server for Internett for å oppdatere katalogene sine. 

Det finnes en rekke typer DNS-posttyper, og det vanligste du har sikkert hørt om er A Records.

A Records

Hvis en webbruker skriver i jeffreifman.com, blir forespørselen sendt videre til en katalog som vil se etter en DNS-post som tilsvarer roten domenet mitt. Ved rot mener jeg ikke et prefiks, ingen www, det vil si ikke et underdomene, bare http://jeffreifman.com. For eksempel kan rotasjonsnivå A-registreringen av domenet ditt peke til 107.164.32.96. Det vil fortelle Internett hvilke IP-adresser som skal sendes din søknadsforespørsel.

Jeg har brukt Kloth-nettstedet i mange år for å sjekke DNS-poster, men det er mange du kan bruke, f.eks. Google Dig eller KeyCDN, hvis innholdsleverandørnettverkstjenester jeg skrev om for Tuts + tidligere i år. Mange nettsteder tilbyr disse verktøyene.

Her er et eksempel på en A-post på Kloth:

Subdomain Records

Du kan også konfigurere A-poster for en rekke underdomener. Hvis du for eksempel vil at www.yourwebsite.com skal gå til samme adresse, kan du sette opp en identisk A-post for underdomenet www, det vil si roten domenet, og www-domenet ville ha identiske IP-adresser.

Nylig har jeg medgrunnlegger Flee the Jungle på http://fleethejungle.com for å lede kunder unna Amazon etter mine historier om selskapets skade til Seattle og viral exposé publisert av New York Times:

Snart vil vi lansere byspesifikke underdomener, f.eks. portland.fleethejungle.com. Hvis vi ønsker å være vert for disse på forskjellige servere, må vi sette opp forskjellige A-poster for hvert subdomener for å peke til serverens unike IP-adresser.

Wildcard Entries

DNS-poster tillater også wildcard-oppføringer (ved hjelp av en stjerne *) som gjør det enkelt å rute all sub-domain-trafikk til en IP-adresse. For eksempel, hvis jeg vil ha noen byforespørsel om Flee the Jungle å være vert for en server, kan jeg gjøre noe slikt:

Wildcards gjør det lettere å fange trafikk fra mange underdomener til en server.

Innkommende ruting på serveren din

Når trafikken kommer til serveren din fra DNS-kartleggingssystemet, må serveren din håndtere den. For eksempel, her er min Apache-nettstedskonfigurasjon for min rotdomenetrafikk og www trafikk: 

 Servernavn jeffreifman.com ServerAlias ​​www.jeffreifman.com DocumentRoot / var / www / jeffreifman DirectoryIndex index.php  Tillat Override All Order Avvis, tillat Tillat fra alle  

Jeg selger også domener ved hjelp av et nettsted som dynamisk priser dem. Så, her er hvordan jeg forteller Apache å akseptere trafikk for alle de forskjellige domenene og DNS-postene:

 ServerName newscloud.com ServerAlias ​​* acro.io ServerAlias ​​* acroyoga.io ServerAlias ​​* acupuncture.io ServerAlias ​​* allmisses.com ServerAlias ​​* amehzon.com ServerAlias ​​* carestrategies.com ServerAlias ​​* caringsitters.com ServerAlias ​​* clipboards.io ServerAlias ​​* commonbits.com ServerAlias * commonroad.com ServerAlias ​​* commontunes.com ServerAlias ​​* completelady.com ... 

Deretter skal jeg fortelle deg om CNAME-poster. Disse er nyttige på en rekke måter, og kan være spesielt nyttige for å forenkle styringen av IP-adressene dine og fremtidige overføringer fra en server til en annen. 

CNAME-poster

CNAMEs er i hovedsak domenenavn og subdomain-tekstaliaser for å kartlegge trafikk til. Hvis du for eksempel har satt opp en blogg gjennom en tjeneste som WordPress eller Tumblr, kan de be deg om å legge inn domenenavnet ditt til en CNAME snarere enn med en A-plate til en IP-adresse.

Jeg bruker ikke Tumblr mye, men for en stund siden satte jeg opp et nettsted med dem for å prøve på http://misc.jeffreifman.com. Her er deres instruksjoner for konfigurering av domenenavnet ditt. De tillater enten A-poster eller CNAMEs. Jeg brukte en CNAME:

Her er min DNS-post for misc.jeffreifman.com:

misc.jeffreifman.com CNAME domains.tumblr.com.

Merk: Du bør legge inn en avsluttende periode på CNAME-adressene dine.

Når en bruker ber om misc.jeffreifman.com i nettleseren, peker DNS dem til domains.tumblr.com som det deretter rekursivt vil slå opp IP-adressen for, som vil bli 66.6.44.4.

En fordel med CNAMEs er at hvis Tumblr noen gang endrer IP-adressen til den innkommende serveren, trenger jeg kanskje ikke å endre CNAME-posten min. Det kan forbli det samme, og Tumblr kan håndtere IP-endringen ved å endre A-posten for domains.tumblr.com. 

Jeg bruker denne tilnærmingen til domenenavnene mine for salg - de fleste av dem peker på en CNAME for min webserver. Hvis jeg trenger å endre verter og endre IP-adressen til min webserver, kan jeg endre ett underdomene En post for CNAME jeg brukte, i stedet for å endre hundre A-poster for hvert domenenavn.

Merk: DNS-standardene lar deg ikke teknisk gi poengdomener til en CNAME-adresse, f.eks. jeffreifman.com CNAME domains.tumblr.com. Derfor foreslår Tumblr en A-post for rotdomenene dine. Noen DNS-navneservere støtter imidlertid dette, så sjekk med deg. For å lære mer, les dette innlegget av Josh Strange.

Et annet scenario du vil bruke CNAMEs med, er CDN-tjenester som beskrevet i KeyCDN-opplæringen jeg skrev for Tuts +. Jeg satte opp fire sky-underdomener kalt c1, c2, c3, c4, alle pekte på KeyCDNs innholdsspeil på jr-faf.kxcdn.com.

Hva skjer når du endrer DNS-poster?

DNS-poster for rotdomener og underdomener er generelt uavhengige av hverandre. En endring til en A-post for et rotdomen påvirker ikke den eksisterende adresseringen av et underdomenes CNAME. Imidlertid har jeg nylig meldt meg til websikkerhetstjenesten Incapsula, og fant at det krever to A-poster for det samme rotdomenet. Dette kan gjøre ting litt mer komplisert. Med andre ord kan du teknisk ha flere A-poster for det samme domenet, noe som kan skape konflikter. 

Det er også viktig å innse at DNS-endringer ikke får virkning umiddelbart. Når du konfigurerer DNS-postene for første gang (eller når du endrer dem), vil Internett-brukere ikke bli koblet til de nyeste innstillingene dine umiddelbart. Dette er en av de tingene som gjør migrering fra en server eller et vertskap til en annen vanskeligere. Faktisk, i verste fall kan det ta mer enn 36 timer.

Min registrar introduserte meg til WhatsMyDNS.net for en visuell rapport om utbredelsen av DNS-endringene mine på ulike områder. Nedenfor var et skjermbilde jeg tok da min Flee the Jungle server flyttet, og krever endringer som endte opp med å ta flere timer.

Kartet nedenfor viser at DNS-servere over hele verden endelig hadde fanget opp til de siste endringene mine:

MX-poster

Hvis du lurer på hva en MX-post er, er det på tide å fortelle deg. MX-poster forteller DNS-systemet hvor du skal sende all den e-posten du mottar. Så, hvis jeg kjøpte StarWars.io og vil motta epost på [email protected], må jeg gjøre to ting.

Først må jeg registrere meg for en e-posttjeneste som Google Apps eller FastMail for å være vert for min e-post. For det andre må jeg følge instruksjonene deres for å konfigurere MX-poster til sine flere redundante e-postservere.

For eksempel, her ser du hvordan Google Apps ser ut:

Prioriterte postserver 1 ASPMX.L.GOOGLE.COM. 5 ALT1.ASPMX.L.GOOGLE.COM. 5 ALT2.ASPMX.L.GOOGLE.COM. 10 ALT3.ASPMX.L.GOOGLE.COM. 10 ALT4.ASPMX.L.GOOGLE.COM.

FastMail ser noe ut som dette:

in1-smtp.messagingengine.com (først, prioritet = 10) in2-smtp.messagingengine.com (andre, prioritet = 20)

Hvis du vil kjøre din egen e-postserver, må du konfigurere MX-posten din til å peke til din egen servers IP-adresse.

Mange har begynt å bruke MX Toolbox for å se opp sine MX-poster, men du kan også bruke en DNS-oppslagstjeneste for det også.

Endre e-postleverandører og flytte e-post

MX-poster instruerer kun DNS-systemet der du skal sende dagens e-postadresse. Din eksisterende e-post er lagret i skyvedatabaser av din nåværende e-postleverandør. Hvis du ønsker å flytte alle dine eksisterende meldinger, må du stole på verktøyene eller e-postklientprogramvaren din. Og selvfølgelig må du også oppdatere MX-postene dine til de nye leverandørens innstillinger. 

Under DNS-forplantningsperioden kan du motta noen e-postmeldinger hos din gamle leverandør og noen på det nye.

Hvis du skifter MX-posten, blir det ikke skadet ditt tidligere e-postregister, men ingenting nytt kommer noensinne å komme dit.

TXT-poster

TXT-poster gjør det mulig for domeneieren å autentisere seg ved å legge inn hemmelige koder i deres DNS. Når du registrerer deg med Googles verktøy for nettredaktører, vil den be deg om å verifisere at du eier domenet ved å gjøre nettopp det.

For eksempel vil Google be deg om å legge inn en kode som er spesifikk for domenet ditt slik som dette:

jeffreifman.com TXT google-site-verifisering = Ih8iC4iSOcBSkk

Jeg har faktisk tre TXT-poster lagt ut for jeffreifman.com akkurat nå:

jeffreifman.com TXT "keybase-site-verifikasjon = qG2zMYf_hw2sXUCgtYWk" jeffreifman.com TXT "v = spf1 inkluderer: spf.efwd.regsrvrs.com ~ alle" jeffreifman.com TXT "google-site-verifikasjon = blTgEw5QFSx5M"

Keybase, som jeg skrev om for Tuts +, mens de dekker PGP Keys, Privacy og Encryption, bruker TXT-poster for meg å verifisere nettstedet mitt som et middel til å godkjenne identiteten min med mine offentlige nøkkelposter.

Du kan også bruke TXT-poster for å fortelle spam-deteksjonsservere at e-postserveren din kun sender legitime e-postadresser som jeg gjorde med SPF-posten ovenfor. Tjenester som Mailgun bruker både SPF og DKIM-poster for å bruke e-postkanoner.

AAAA Records

Da Internett går ut av IP-adresser, beveger vi oss langsomt til et større adresseringssystem, IPV6. Du kan lese Bli den første på blokken din som kjører IPV6 (Tuts +) for mer informasjon om dette.

Hvis du bestemmer deg for å støtte IPv6-adressering, må du konfigurere en AAAA-plate med sitt større adresseringssystem:

I dag håndteres de fleste IPv4 til IPv6-konvertering transparent bak kulissene. Selv om det på et tidspunkt lenge etter at klimaendringene har drept av den siste isbjørnen (takk Senator Inhofe), kan en post bli en relikvie og AAAA vil være den primære DNS-posten for å konfigurere.

I Avslutning

Jeg håper du har funnet denne opplæringen en nyttig introduksjon til DNS-poster. Som alltid, vær så snill å poste dine spørsmål og kommentarer nedenfor. Du kan også besøke meg på Twitter for å gi meg beskjed om hva du synes - eller hva jeg savnet. Eller omvendt kan du sende meg e-post direkte, bla gjennom andre Tuts + artikler eller sjekk ut min andre skriving.

Relaterte linker

  • Domenenavnssystemet (DNS) (Wikipedia)
  • Liste over DNS-posttyper (Wikipedia)
  • Hva er min DNS? Global Propagation Checker
  • Kloth DNS Lookup
  • MX Toolbox DNS Lookup