PPP
PPP – point to point protokollen – som er en standard RFC1331. Kan hentes fra for eksempel http://www.rfc-editor.org/
PPP gør det muligt at overføre flere forskellige protokoller over serielle linier. PPP er væsentligt mere kompleks end SLIP, og har i modsætning til denne implementeret et stort antal muligheder med hensyn til fejlkorrektion, tildeling af netværksadresser samt sikkerhed.
Grundlæggende består PPP af tre komponenter
- Indkapsling af datapakker
- LCP – Link Control Protokol – til opbygning og opretholdelse af dataforbindelser.
- NCP – Network Control Protocols - Forskellige netværkskontrol protokoller til konfiguration af de forskellige netværksprotokoller. (TCP/IP, IPX, SNA….)
PPP indkapsling |
PPP indkapsler de datapakker der skal overføres i HDLC format – Highlevel Data Link Control (Standard ISO 3309-1979).
Startflag Indikerer starten på en HDLC pakke og indeholder den binære værdi 01111110. Adressefelt Adressefeltet ved PPP sættes 11111111 binært, i HDLC protokollen er dette All-Stations – altså broadcast. Kontrolfelt Kontrolfeltet indeholder værdien 00000011 binært, i HDLC protokollen er dette Unnumbered-Information. Protokolfeltet Indeholder hvilken protokol PPP er i gang med at overføre. Se Tabel 1
Kontrolfelt (CRC-kode) som bruges til at afgøre om der er sket transmissionsfejl Slutflag Slutflaget viser afslutningen på en HDLC-pakke, og indeholder som startflaget 01111110 |
Protokol feltet
|
|
|
Padding Protokol |
|
Internet Protokol |
|
OSI Network Layer |
|
Xerox NS IDP |
|
DECnet Phase IV |
|
AppleTalk |
|
Novell IPX |
|
Van Jakobsen – Compressed TCP/IP |
|
Van Jakobsen – Uncompressed TCP/IP |
|
Bridging PDU’er |
|
Stream Protokol |
|
Banyan Vines |
|
AppleTalk EDDP |
|
AppleTalk smart buffered |
|
Multi-link |
|
PPP NLPID |
|
1 valg af kompressionsalgoritme |
|
802.1d hello pakker |
|
IBM Source Routing Bridge PDU’er |
|
Internet Protocol Control Protocol - IPCP |
|
OSI Network Layer Control Protocol |
|
Xerox NS IDP Control Protocol |
|
DECnet Phase IV control Protocol |
|
AppleTalk Control Protocol |
|
Novell IPX Control Protocol |
|
Bridging NCP |
|
Stream Protocol Control Protocol |
|
Banyan Vines Control Protocol |
|
Multi-Link Control Protocol |
|
Compression Control Protocol |
|
LCP – Link Control Protocol |
|
PAP – Password Authentication Protocol |
|
CHAP – Challenge Handshake Authentication Protocol |
LCP – Link Control Protocol
LCP protokollen har til opgave at opbygge, konfigurere, overvåge og nedbryde den serielle punkt-til-punkt forbindelse. Herudover er det LCP’s opgave at kalde de forskellige netværks kontrol protokoller. For eksempel Internet Protocol Control Protocol, Se Tabel 1.
De to LCP lag på de opkoblede maskiner kan sende til hinanden ved at sætte HDLC protokolfeltet til C021 hexadecimalt. Se Tabel 1.
LCP laget går igennem følgende faser ved en opkobling:
- Opkobling og konfigurations fase
- LCP pakker udveksles mellem de 2 maskiners LCP lag. Protokolfeltet = C021. Konfiguration mellem de 2 maskiners LCP lag aftales. Der kan for eksempel aftales pakkestørrelser, kompression af PPP felter og hvilken sikkerhedsprocedure der anvendes. Se fase 3. (Bemærk: Det er kun linien der er åben på nuværende tidspunkt)
- Linie kvalitet check
- Denne fase er valgbar. PPP har ikke indbygget mekanismer for at bestemme liniens kvalitet, men har indbygget forskellige primitive værktøjer. For eksempel echo (ping lignende)
- Authentication – login validering
- Denne fase er valgbar. Hver maskine validerer sig selv overfor den anden maskine, med valideringsmetoden som blev aftalt under fase 1. For eksempel PAP eller CHAP. (Se senere)
- Netværkslag protokol konfiguration
- Efter succesfuld validering vil den ønskede protokols NCP – for eksempel IP’s Control Protokol, IPCP, se Tabel 1 – forhandle og sætte den ønskede konfiguration op. For eksempel opkald til en ISP – Internet Service Provider – via modem, vil sætte de nødvendige IP parametre op, for at komme på internettet. I denne forbindelse kan Van Jakobsens Compressed TCP/IP nævnes. Denne bruges til at komprimere IP og TCP headerne fra 40 til 4 byte for maskiner der udveksler mere end en pakke med hinanden. Kontrollen kan nu overgives til den ønskede protokol. For eksempel TCP/IP. PPP passer således ind i OSI modellen. Se Figur 3.
- Forbindelsen afsluttes
- LCP kan afslutte forbindelsen når som helst, men kan være op til brugeren, eller en fastsat tid uden aktivitet
PAP – Password Authentication Protocol
PAP er en ret simpel, og ikke ret sikker, metode til at sikre sikkerheden mellem to opkoblede maskiner. Maskinerne sender brugernavn og password gentagne gange til hinanden, indtil det lykkes at logge ind, eller forbindelsen afbrydes. Både brugernavn og password sendes i klar tekst, hvorfor disse relativt nemt kan opsnappes. Da brugernavn og password kun bruges ved opkobling af linien, er det muligt at overtage en allerede åben forbindelse.
Der er heller ingen begrænsning på det antal forsøg, man kan anvende før det lykkes at blive logget ind. Derfor kan servere der bruger PAP som valideringsmetode blive hacket af trial-and-error programmer. Det vil sige programmer der bliver ved med at logge ind med forskellige navne og passwords.
CHAP – Challenge Handshake Authentication Protocol
CHAP er brugt til periodisk at validere brugernavn og password. Og er dermed bedre sikret mod overtagelse af linien end PAP. Herudover kan man ikke bare sende brugernavn og password, idet hele princippet i CHAP bygger på udfordringer. Heraf Challenge Handshake Authentication Protocol. Det er tilladt hver maskine at sikre sig hvem den anden er ved at sende en Challenge, hvorefter den anden maskine skal svare med et svar som er beregnet for gang til gang.