Ethernet-frames
Ethernet frames bevinden zich op de Data Link laag van het OSI 7 Layer model. Zij vormen het basisnetwerkblok van moderne IP-netwerken. Als een systeem de gegevens van de fysieke draad haalt is het ethernetframe de eerste laag die verwijderd of ontkapseld moet worden voordat de informatie wordt gelezen.
Ethernetframe
| 8 Bytes |
1 Byte |
6 Bytes |
6 Bytes |
4 Bytes |
2 Bytes |
9000 Bytes (Jumbo Frames) |
4 Bytes |
| Preamble |
SFD (Start Frame Delimeter) |
Destination Address |
Source Address |
VLAN TAG |
Type / Length |
DATA |
Frame Check Sequence (CRC) |
IPv4 en IPv6
Zowel IPv4 als IPv6 bevinden zich op de Netwerklaag van het OSI 7 Laagmodel. Ze zorgen ervoor dat systemen buiten het lokale subnet kunnen communiceren. Zodra een systeem het Ethernet Frame heeft onthoofd, evalueert het systeem de gepresenteerde IP-informatie. IPv4 werd opgericht in 1981 als onderdeel van IETF RFC 791 maar werd voor het eerst ingezet in1983. Naarmate het internet groeide werd echter duidelijk dat de openbare IPv4-ruimte volledig zou worden verbruikt, waardoor IPv6 werd gecreëerd. IPv4-adresruimte was officieel uitgeput op24 september 2015.Als zodanig IPv6 is nu alles wat kan worden gekocht vanARINdat is het Amerikaanse register van Internet Numbers.IANAis de Global organisator van Internet Address ruimte en er zijn andere regio's.
IPv4-header
| IPv4 Header (32 bits) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Version |
IHL (header Len) |
Type Of Server (TOS) |
Total Length |
| 4 |
Identification |
IP Flag |
Fragment Offset |
| 8 |
Time To Line (TTL) |
Protocol |
Header Checksum |
| 12 |
Source Address |
| 16 |
Destination Address |
| 20 |
IP Option (Variable Length, Optional, not common) |
IPv6-kop
| IPv6 Header (128 bits) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Version |
Traffic Class |
Flow Label |
| 4 |
Payload Length |
Next Header |
Hop Limit |
| 8-20 |
Source Address |
| 24 - 36 |
Destination Address |
TCP-kop
TCP is een van de laatste inkapselingslaag voordat het het besturingssysteem binnenkomt. Servers zullen meestal luisteren op een specifieke poort voor een protocol te functioneren. Bijvoorbeeld een niet-versleutelde webserver luistert meestal op TCP poort 80.
| TCP Header (60 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Source Port # (16 bits) |
Destination Port # (16 bits) |
| 4/td>
| Sequence Number (32 bits) |
| 8 |
Acknowledgement Number (32 bits) |
| 12 |
Header Length (4) |
Reserved (6) |
URG |
ACK |
PSH |
RST |
SYN |
FIN |
Window Size (16 bits) |
| 16 |
TCP Checksum (16 bits) |
Urgent Pointer (16 bit) |
| 20 |
Options (if any, variable length, padded with 0's) |
| 24 |
Actual Data Payload |
UDP-header
UDP is op hetzelfde niveau als TCP in dat zijn ook een van de laatste inkapselingslaag voordat het het besturingssysteem. Servers zullen meestal luisteren op een specifieke poort voor een protocol te functioneren. Bijvoorbeeld een DHCP server zal worden vermeld op UDP poort 67 en 68 voor een DHCP verzoek.
| UDP Header (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Source Port # (16 bits) |
Destination Port # (16 bits) |
| 4 |
Length (16 bits) |
Checksum (16 bits) |
ICMP-kop
ICMP is op hetzelfde niveau als TCP en UDP maar wordt gebruikt voor netwerkbeheer met ARP en ping.
| ICMP Header (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Type (8 bits) |
Code (8 bits) |
Checksum (16 bits) |
| 4 |
Other Message Specific Information (32 bits) |
IGMP-kop
IGMP is op hetzelfde niveau als TCP en UDP en ICMP, maar wordt gebruikt voor multicast communicatie. Het volgende is de IGMPv1 header
IGMP Header Versie 1
| IGMP Header Version1 (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Version (4 bits) |
Type (4 bits) |
Unused (8 bits) |
Checksum (16 bits) |
| 4 |
Group Address (32 bits) |
IGMP header versie 2
| IGMP Header Version2 (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Type (8 bits) |
Max Response Time (8 bits) |
Checksum (16 bits) |
| 4 |
Group Address (32 bits) |
Internet Protocol Security (IPSEC) Header
IPSEC is een beveiligingsprotocol suite gebouwd voor IP-communicatie. Elk pakket wordt geauthentiseerd en versleuteld vóór verzending.
IPSEC-authenticatiekop
| IPSEC Authentication Header(12 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Next Header (8 bits) |
Payload Length (8 bits) |
Reserved (16 bits) |
| 4 |
Security Parameters Index (SPI) (32 bits) |
| 8 |
Sequence Number (32 bits) |
| 16 |
Integrity Check Value (ICV) (32 bits or more as required) |
IPSEC ESP-header
| IPSEC Encapsulating Security Payload (ESP) Header |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Security Parameter Index (SPI) (32 bits) |
| 4 |
Sequence Number (32 bits) |
| 8 |
Payload Data (32 bits or more) |
| ... |
Padding (0 - 255 Bytes) |
| ... |
Padding Length (8 Bytes) |
Next Header (8 Bytes) |
Integrity Check Value (ICV) (4 bytes or more) |
Generic Routing Encapsulation (GRE) Header
GRE is een tunnelprotocol dat andere data inkapselt. Zodra de Data is ingekapseld zal het verkeer lijken voor een eindgebruiker een punt tot punt link, hoewel er verschillende gerouteerde verbindingen de tunnel traverses. Het kan nuttig zijn om één type netwerk, zoals gastverkeer, over een ander netwerk, zoals een bedrijfsnetwerk, over te dragen als encryptie niet vereist is.
| Generic Routing Encapsulation Header(16 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Checksum Present (1 bits) |
Reserved (12 bits) |
Version Number (3 bits) |
Protocol Type (16 bits) |
| 4 |
Checksum (optional) (16 bits) |
Reserved (optional) (16 bits) |
Generic Routing Encapsulation (GRE) Header - Extended
In september 2000 heeft de IETF in het RFC2890uitbreidingen toegevoegd aan de GRE header.
| Generic Routing Encapsulation Header(32 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Checksum Present (1 bits) |
Key Present (1 bits) |
Sequence Number Present (1 bits) |
Reserved (12 bits) |
Version Number (3 bits) |
Protocol Type (16 bits) |
| 4 |
Checksum (optional) (16 bits) |
Reserved (optional) (16 bits) |
| 8 |
Key (optional) (32 bits) |
| 12 |
Sequence Number (optional) (32 bits) |
OSI 7 Laagmodel
Als dit artikel verwijst naar de OSI 7 Laag model het wordt opgenomen als een verwijzing toepassing
Presentatie
Directoraat
Vervoer
Netwerk
Gegevenskoppeling
Fysiek