logo

Dynamic Host Configuration Protocol (DHCP)

Dynamic Host Configuration Protocol, är ett nätverksprotokoll som används för att automatisera processen att tilldela IP-adresser och andra nätverkskonfigurationsparametrar till enheter (som datorer, smartphones och skrivare) i ett nätverk.

Vad är DHCP?

DHCP står för Dynamic Host Configuration Protocol. Det är den kritiska egenskapen på vilken användarna av ett företagsnätverk kommunicerar. DHCP hjälper företag att smidigt hantera allokeringen av IP-adresser till slutanvändarklienternas enheter som stationära datorer, bärbara datorer, mobiltelefoner etc. är ett applikationslagerprotokoll som används för att tillhandahålla:



Subnet Mask (Option 1 - e.g., 255.255.255.0) Router Address (Option 3 - e.g., 192.168.1.1) DNS Address (Option 6 - e.g., 8.8.8.8) Vendor Class Identifier (Option 43 - e.g.,  'unifi' = 192.168.1.9 ##where unifi = controller)>

DHCP är baserat på en klient-server-modell och baserat på upptäckt, erbjudande, begäran och ACK.

Varför använda DHCP?

DHCP hjälper till att hantera hela processen automatiskt och centralt. DHCP hjälper till att upprätthålla en unik IP-adress för en värd som använder servern. DHCP-servrar upprätthåller information om TCP/IP-konfiguration och tillhandahåller adresskonfiguration till DHCP-aktiverade klienter i form av ett leasingerbjudande.

panda smälter

Komponenter av DHCP

Huvudkomponenterna i DHCP inkluderar:



  • DHCP-server: DHCP Server är en server som innehåller IP-adresser och annan information relaterad till konfiguration.
  • DHCP-klient: Det är en enhet som tar emot konfigurationsinformation från servern. Det kan vara en mobil, bärbar dator, dator eller någon annan elektronisk enhet som kräver en anslutning.
  • DHCP-relä: DHCP-reläer fungerar i princip som en kommunikationskanal mellan DHCP-klient och server.
  • IP-adresspool: Det är poolen eller behållaren med IP-adresser som DHCP-servern besitter. Den har en rad adresser som kan tilldelas enheter.
  • Subnät: Subnät är mindre delar av IP-nätverket som är partitionerat för att hålla nätverk under kontroll.
  • Hyra: Det är helt enkelt den tid som hur länge informationen som tas emot från servern är giltig, i händelse av att hyresavtalet löper ut måste hyresgästen behöva omfördela hyresavtalet.
  • DNS-servrar: DHCP-servrar kan också tillhandahålla DNS (Domain Name System) serverinformation till DHCP-klienter, så att de kan lösa domännamn till IP-adresser.
  • Huvudingång: DHCP-servrar kan också ge information om standardgatewayen, som är den enhet som paket skickas till när destinationen är utanför det lokala nätverket.
  • Alternativ: DHCP-servrar kan tillhandahålla ytterligare konfigurationsalternativ till klienter, såsom subnätmask, domännamn och tidsserverinformation.
  • Förnyelse: DHCP-klienter kan begära att förnya sitt hyresavtal innan det löper ut för att säkerställa att de fortsätter att ha en giltig IP-adress och konfigurationsinformation.
  • Failover: DHCP-servrar kan konfigureras för failover, där två servrar arbetar tillsammans för att ge redundans och säkerställa att klienter alltid kan få en IP-adress och konfigurationsinformation, även om en server går ner.
  • Dynamiska uppdateringar: DHCP-servrar kan också konfigureras för att dynamiskt uppdatera DNS-poster med IP-adressen för DHCP-klienter, vilket möjliggör enklare hantering av nätverksresurser.
  • Granskningsloggning: DHCP-servrar kan föra granskningsloggar över alla DHCP-transaktioner, vilket ger administratörer insyn i vilka enheter som använder vilka IP-adresser och när leasingavtal tilldelas eller förnyas.

Driftkod Maskinvarutyp Hårdvarulängd Hopptal
Övergångs-ID
Antal sekunder Flaggor
Klientens IP-adress
Din IP-adress
Server IP adress
Gateway IP-adress

Klientens hårdvaruadress

(16 byte)



Server namn

(64 byte)

Startfilens namn

(128 byte)

alternativ

(Variabel längd)

pandas pivot

Fig. DHCP-paketformat

  • Hårdvarulängd: Detta är ett 8-bitarsfält som definierar längden på den fysiska adressen i byte. t.ex. för Ethernet värdet är 6.
  • Antal hopp: Detta är ett 8-bitars fält som definierar det maximala antalet hopp paketet kan färdas.
  • Transaktions ID: Detta är ett 4-byte-fält med ett heltal. Transkationsidentifikationen ställs in av klienten och används för att matcha ett svar med begäran. Servern returnerar samma värde i sitt svar.
  • Antal sekunder: Detta är ett 16-bitars fält som indikerar antalet sekunder som har förflutit sedan den tidpunkt då klienten startade.
  • Flagga: Detta är ett 16-bitars fält där endast biten längst till vänster används och resten av biten ska sättas till os. En bit längst till vänster anger ett påtvingat sändningssvar från servern. Om svaret skulle vara unicast till klienten, destinationen. IP-adressen för IP-paketet är den adress som tilldelas klienten.
  • Klientens IP-adress: Detta är ett 4-byte fält som innehåller klientens IP-adress. Om klienten inte har denna information har detta fält värdet 0.
  • Din IP-adress: Detta är ett 4-byte fält som innehåller klientens IP-adress. Den fylls av servern på klientens begäran.
  • Server IP adress: Detta är ett 4-byte fält som innehåller serverns IP-adress. Den fylls i av servern i ett svarsmeddelande.
  • Gateway IP-adress: Detta är ett 4-byte fält som innehåller IP-adressen för en routrar. IT fylls av servern i ett svarsmeddelande.
  • Klientens hårdvaruadress: Det här är fysisk adress av klienten . Även om servern kan hämta denna adress från ramen som sänds av klienten är det mer effektivt om adressen tillhandahålls explicit av klienten i förfrågningsmeddelandet.
  • Server namn: Detta är ett 64-byte fält som valfritt fylls av servern i ett svarspaket. Den innehåller en noll-terminerad sträng som består av domännamnet på servern. Om servern inte vill fylla denna arkiverade med data, måste servern fylla den med alla nollor.
  • Startfilnamn: Detta är ett 128-byte fält som valfritt kan fyllas i av servern i ett svarspaket. Den innehåller en nollterminerad sträng som består av startfilens fullständiga sökväg. Klienten kan använda den här sökvägen för att hämta annan startinformation. Om servern inte vill fylla detta fält med data måste servern fylla det med alla nollor.
  • Alternativ: Detta är ett 64-byte fält med ett dubbelt syfte. IT kan bära antingen ytterligare information eller viss specifik leverantörsinformation. Fältet används endast i ett svarsmeddelande. Servern använder ett nummer, en så kallad magisk cookie, i formatet en IP-adress med värdet 99.130.83.99. När klienten har läst klart meddelandet letar den efter denna magiska kaka. Om de finns är de nästa 60 byten alternativ.

Fungerar med DHCP

DHCP fungerar på applikationslagret i TCP/IP-protokollet. Huvuduppgiften för DHCP är att dynamiskt tilldela IP-adresser till klienterna och allokera information om TCP/IP-konfiguration till klienter. För mer, kan du hänvisa till artikeln Fungerar med DHCP .

DHCP portnummer för servern är 67 och för klienten är 68. Det är ett klient-serverprotokoll som använder UDP-tjänster . En IP-adress tilldelas från en pool av adresser. I DHCP utbyter klienten och servern huvudsakligen 4 DHCP-meddelanden för att skapa en anslutning, även kallad DORA process, men det finns 8 DHCP-meddelanden i processen.

Fungerar med DHCP

Fungerar med DHCP

De 8 DHCP-meddelandena

1. DHCP-upptäcksmeddelande: Detta är det första meddelandet som genereras i kommunikationsprocessen mellan servern och klienten. Detta meddelande genereras av klientvärden för att upptäcka om det finns någon DHCP-server/servrar i ett nätverk eller inte. Detta meddelande sänds till alla enheter som finns i ett nätverk för att hitta DHCP-servern. Detta meddelande är 342 eller 576 byte långt

DHCP upptäckt meddelande

DHCP upptäckt meddelande

Som visas i figuren, källan MAC-adress (klient-PC) är 08002B2EAF2A, destinationens MAC-adress(server) är FFFFFFFFFFFF, källans IP-adress är 0.0.0.0 (eftersom datorn inte har haft någon IP-adress hittills) och destinations-IP-adressen är 255.255.255.255 (IP-adressen används för sändning). När de upptäcker sänds meddelandet för att ta reda på DHCP-servern eller servrarna i nätverket, därför används sändnings IP-adress och MAC-adress.

2. DHCP erbjuder ett meddelande: Servern kommer att svara värden i det här meddelandet och specificera den outhyrda IP-adressen och annan TCP-konfigurationsinformation. Detta meddelande sänds av servern. Storleken på meddelandet är 342 byte. Om det finns mer än en DHCP-server i nätverket kommer klientvärden att acceptera det första DHCP ERBJUDANDE-meddelandet som den tar emot. Dessutom anges ett server-ID i paketet för att identifiera servern.

DHCP-erbjudandemeddelande

DHCP-erbjudandemeddelande

Nu, för erbjudandemeddelandet, är käll-IP-adressen 172.16.32.12 (serverns IP-adress i exemplet), destinations-IP-adressen är 255.255.255.255 (sändnings-IP-adress), källans MAC-adress är 00AA00123456, destinations-MAC-adressen är FFFFFFFFFFFF. Här sänds erbjudandemeddelandet av DHCP-servern, därför är destinationens IP-adress sändnings-IP-adressen och destinations-MAC-adressen är FFFFFFFFFFFF och källans IP-adress är serverns IP-adress och MAC-adressen är serverns MAC-adress.

Servern har också tillhandahållit den erbjudna IP-adressen 192.16.32.51 och en leasingtid på 72 timmar (efter denna tid kommer värdens inmatning att raderas från servern automatiskt). Klientidentifieraren är också PC MAC-adressen (08002B2EAF2A) för alla meddelanden.

3. DHCP-begäranmeddelande: När en klient tar emot ett erbjudandemeddelande svarar den genom att sända ett DHCP-begäranmeddelande. Klienten kommer att producera en gratis ARP för att se om det finns någon annan värd i nätverket med samma IP-adress. Om det inte finns något svar från en annan värd, så finns det ingen värd med samma TCP-konfiguration i nätverket och meddelandet sänds till servern som visar att IP-adressen accepteras. Ett klient-ID läggs också till detta meddelande.

DHCP-begäranmeddelande

DHCP-begäranmeddelande

inkapslingsprogram

Nu sänds förfrågningsmeddelandet av klientdatorn, därför är källans IP-adress 0.0.0.0 (eftersom klienten inte har någon IP just nu) och destinations-IP-adressen är 255.255.255.255 (sändnings-IP-adressen) och källans MAC-adress är 08002B2EAF2A (PC MAC-adress) och destinationens MAC-adress är FFFFFFFFFFFF.

Notera - Detta meddelande sänds efter ARP-begäran som sänds av datorn för att ta reda på om någon annan värd inte använder den erbjudna IP-adressen. Om det inte finns något svar, sänder klientvärden DHCP-begäranmeddelandet för servern som visar godkännandet av IP-adressen och annan TCP/IP-konfiguration.

4. DHCP-bekräftelsemeddelande: Som svar på det mottagna begärandemeddelandet kommer servern att göra en post med ett specificerat klient-ID och binda IP-adressen som erbjuds med leasingtid. Nu kommer klienten att ha den IP-adress som servern tillhandahåller.

DHCP-bekräftelsemeddelande

DHCP-bekräftelsemeddelande

Nu kommer servern att göra en inmatning av klientvärden med den erbjudna IP-adressen och leasingtiden. Denna IP-adress kommer inte att tillhandahållas av servern till någon annan värd. Destinations-MAC-adressen är FFFFFFFFFFFF och destinations-IP-adressen är 255.255.255.255 och käll-IP-adressen är 172.16.32.12 och källans MAC-adress är 00AA00123456 (server-MAC-adress).

5. Negativt DHCP-bekräftelsemeddelande: Närhelst en DHCP-server tar emot en begäran om en IP-adress som är ogiltig enligt de omfång som är konfigurerade, skickar den ett DHCP Nak-meddelande till klienten. T.ex. när servern inte har någon oanvänd IP-adress eller poolen är tom, skickas detta meddelande av servern till klienten.

6. DHCP-nedgång: Om DHCP-klienten fastställer att de erbjudna konfigurationsparametrarna är olika eller ogiltiga, skickar den ett DHCP-avvisningsmeddelande till servern. När det finns ett svar till de gratis ARP av vilken värd som helst till klienten, skickar klienten ett DHCP-avvisningsmeddelande till servern som visar att den erbjudna IP-adressen redan används.

konvertera sträng till interger

7. DHCP-version: En DHCP-klient skickar ett DHCP-releasepaket till servern för att frigöra IP-adressen och avbryta eventuell återstående leasingtid.

8. DHCP-information: Om en klientadress har erhållit en IP-adress manuellt använder klienten DHCP-information för att erhålla andra lokala konfigurationsparametrar, såsom domännamn. Som svar på DHCP-informationsmeddelandet genererar DHCP-servern ett DHCP-ack-meddelande med en lokal konfiguration som är lämplig för klienten utan att tilldela en ny IP-adress. Detta DHCP-ackmeddelande är unicast till klienten.

Notera - Alla meddelanden kan unicast även av DHCP-reläagenten om servern finns i ett annat nätverk.

Fördelar med DHCP

  • Centraliserad hantering av IP-adresser.
  • Centraliserad och automatiserad TCP/IP-konfiguration .
  • Enkelt att lägga till nya klienter till ett nätverk.
  • Återanvändning av IP-adresser minskar det totala antalet IP-adresser som krävs.
  • Effektiv hantering av IP-adressändringar för klienter som måste uppdateras ofta, till exempel för bärbara enheter som flyttar till olika platser i ett trådlöst nätverk.
  • Enkel omkonfigurering av IP-adressutrymmet på DHCP-servern utan att behöva konfigurera om varje klient.
  • DHCP-protokollet ger nätverksadministratören en metod att konfigurera nätverket från ett centraliserat område.
  • Med hjälp av DHCP kan enkel hantering av nya användare och återanvändning av IP-adresser uppnås.

Nackdelar med DHCP

  • IP-konflikt kan uppstå.
  • Problemet med DHCP är att klienter accepterar vilken server som helst. Följaktligen, när en annan server är i närheten, kan klienten ansluta till denna server, och denna server kan eventuellt skicka ogiltiga data till klienten.
  • Klienten kan inte komma åt nätverket i frånvaro av en DHCP-server.
  • Namnet på maskinen kommer inte att ändras om en ny IP-adress tilldelas.

Vanliga frågor om DHCP – Vanliga frågor

Vilka är vanliga problem med DHCP?

Om DHCP-servern inte är korrekt inställd kan det orsaka problem som IP-adresskonflikter, felaktiga subnätmasker , felaktig standard gateways , eller otillräckliga IP-adresspooler.

Vilken port används i DHCP?

DHCP använder UDP-port 67 på servern och UDP-port 68 på klienten.

Vilket lagerprotokoll är DHCP?

DHCP är en applikationslagerprotokoll.

Varför är DHCP att föredra?

Det är en mer effektiv metod för att hantera IP-adresser än statisk adressallokering. DHCP använder ett stabilt transportlagerprotokoll.