Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter...

94
1 Apr-14-08 SNB PHH 1 1 Netwerkprotocollen Inleiding TCP/IP Apr-14-08 SNB PHH 1 2 Overzicht ISO 7 lagen model Laag 2 - Ethernet Laag 3 - IP Laag 4 • ICMP • UDP • TCP Toepassingen • Ping • DNS • traceroute • DHCP • SNMP Documentatie

Transcript of Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter...

Page 1: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

1

Apr-14-08 SNB PHH 1 1

NetwerkprotocollenInleiding TCP/IP

Apr-14-08 SNB PHH 1 2

Overzicht ISO 7 lagen model

Laag 2 - Ethernet Laag 3 - IP Laag 4

• ICMP• UDP• TCP

Toepassingen• Ping• DNS• traceroute• DHCP• SNMP

Documentatie

Page 2: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

2

Apr-14-08 SNB PHH 1 3

Protocollen

Afspraken IP IPX AppleTalk VinesIP

Apr-14-08 SNB PHH 1 4

Page 3: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

3

Apr-14-08 SNB PHH 1 5

ISO model7 lagen

Apr-14-08 SNB PHH 1 6

ISO 7 lagen model

Page 4: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

4

Apr-14-08 SNB PHH 1 7

Complexiteit Gelaagde opbouw

Complexiteit beheersbaar maken ISO 7 lagen model

steunt alleen op de onderliggende laag verleent services naar de bovenliggende laag steeds abstracter steeds onafhankelijker van de physieke structuur

Iedere laag vervangbaar zonder effecten naar boven

Apr-14-08 SNB PHH 1 8

ISO model (laag 1) Bitstroom door kabel Mechanische standaards

Connectoren• Pinouts

Electrische standaards Spanningen Frequenties Kleuren (licht) Modulaties

Page 5: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

5

Apr-14-08 SNB PHH 1 9

ISO model (laag 2) Ruw transmissiekanaal Data in pakketten Foutdetectie Physieke adressen

MAC adressen (Ethernet, TokenRing)• Media Access Control• Many to many

Geen adressen (PPP, SLIP, HDLC)• Point to point

Apr-14-08 SNB PHH 1 10

ISO model (laag 3) Pakketten van host naar host Over de grenzen van het eigen subnet heen Logische adressen

Bepaald door de omgeving Afbeelding op physieke adressen

• Address Resolution Protocol (ARP)

Subnets Congestieafhandeling Accounting

Page 6: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

6

Apr-14-08 SNB PHH 1 11

ISO model (laag 4)

End-to-end transport Foutcorrectie Aparte netwerkverbinding Data van programma naar programma

Apr-14-08 SNB PHH 1 12

ISO model (laag 5)

Sessies Bidirectioneel

Page 7: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

7

Apr-14-08 SNB PHH 1 13

ISO model (laag 6)

Uniform data formaat ASCII - EBCDIC Netwerk vs host-byte order

Apr-14-08 SNB PHH 1 14

ISO model (laag 7)

Applicatieprotocol Virtual terminal (Telnet, SSH) Mail protocol (SMTP) File transport (FTP) File Sharing (NFS)

Page 8: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

8

Apr-14-08 SNB PHH 1 15

IP en ISO model

TCP/IP past niet exact Minder lagen in TCP/IP Lagen liggen iets anders verdeeld TCP/IP definieert geen lagen “onder” IP

Apr-14-08 SNB PHH 1 16

Communicatie

Conceptueel gaat communicatie horizontaal Van laag 7 naar laag 7

Data stroomt verticaal in protocol stack Aan zender kant naar beneden Aan ontvanger kant naar boven

Alleen lagen 1 staan “echt” in verbinding

Page 9: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

9

Apr-14-08 SNB PHH 1 17

Bruggen

Machines met meer dan één interface Koppeling tussen twee stacks

Laag 1 Repeater Laag 2 Bridge Laag 3 Router Hoger Proxy, Application gateway

Apr-14-08 SNB PHH 1 18

Router/bridge/repeater

Koppeling op laag 3 Koppeling op laag 2 Koppeling op laag 1

Page 10: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

10

Apr-14-08 SNB PHH 1 19

Laag 1

UTP MM Fiber

MultiMode 62.5 µ Multimode 50 µ

SM Fiber SingleMode 10 µ

Apr-14-08 SNB PHH 1 20

Locale netten

UTP bekabeling Unshielded Twisted Pair

Switched 10/100 Mb Behalve nog wat oude plekken

• Hubs (op kleine switch)

Page 11: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

11

Apr-14-08 SNB PHH 1 21

Van Wall-outlet

Unshielded Twisted Pair

4 paren Max 100 meter

Apr-14-08 SNB PHH 1 22

Kabel

Page 12: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

12

Apr-14-08 SNB PHH 1 23

Via SER

Afgemonteerd op strip Meestal 24

Gelabeld Beide zijden gelijk

Patch naar apparatuur

Apr-14-08 SNB PHH 1 24

Naar Apparatuur

Patch naar outlet

Page 13: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

13

Apr-14-08 SNB PHH 1 25

Laag 2

Ethernet (TokenRIng) (FDDI) (SLIP) (PPP) (ATM) (HDLC)

Apr-14-08 SNB PHH 1 26

Sigarendoosje…

Page 14: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

14

Apr-14-08 SNB PHH 1 27

Ethernet

10 base 5• 'gele tuinslang', 500 meter

10 base 2• dunne coax, 185 meter

10 base T• UTP, 100 meter

10 base FL• Fiber, kilometers (MM), tientallen kilometers (SM)

Apr-14-08 SNB PHH 1 28

Fast Ethernet

100 base TX• UTP, 100 meter

100 base FX• Fiber, kilometers (MM), tientallen kilometers (SM)

Page 15: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

15

Apr-14-08 SNB PHH 1 29

Gigabit Ethernet

1000 base TX• UTP, 100 meter

1000 base SX• Fiber, 300 meter

1000 base LX• Fiber, 550 meter (MM), kilometers (SM)

1000 base ZX• Fiber, tientallen kilometers (SM)

Apr-14-08 SNB PHH 1 30

10 GigabitEthernet 10g base SR

MM, 30-300 meter 10g base LR

SM, 10 km 10g base ER

SM, 40 km 10g base ZR

SM, 80 km 10g base CX4

4 * coax, 15m 10g base T

UTP, 50m (cat6), 100m (cat7)

Page 16: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

16

Apr-14-08 SNB PHH 1 31

EthernetIn detail

Apr-14-08 SNB PHH 1 32

Ethernet

Medium “shared ether” Wacht tot het stil is Stuur je pakket Collision

• Twee beginnen tegelijk

Page 17: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

17

Apr-14-08 SNB PHH 1 33

Ethernet

Ethernet adressen 48 bits Specials

• Broadcast (ff:ff:ff:ff:ff:ff)• Multicast (01:00:5e:xx:xx:xx)

Wereldwijd uniek• Vendor code (24 bits)

Lijst http://standards.ieee.org/regauth/oui/index.shtml

Apr-14-08 SNB PHH 1 34

Collision Twee proberen tegelijk te sturen Bek houden Random tijd wachten

random tussen 0 en X, X verdubbelt iedere keer Opnieuw proberen Collisions volkomen normaal (half duplex) Afhandeling door netwerkinterface Alleen een beetje vertraging Alleen probleem als het er erg veel zijn

Page 18: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

18

Apr-14-08 SNB PHH 1 35

Collision Looptijden

Signaal altijd enige tijd onderweg Collisions beperken kabellengte

Collision altijd in eerste 64 bits Anders 'Late collision'

• FOUT! Full vs half duplex

Full duplex dus geen collisions Duplex mismatch

• Veel collisions aan de half duplex kant• Late collisions• Wordt het heeeel traag

Apr-14-08 SNB PHH 1 36

Collision

Kabellengten Looptijden Repeater geldt als xxx meter kabel Media converter geldt als xxx meter kabel

Page 19: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

19

Apr-14-08 SNB PHH 1 37

Ethernet pakket

Apr-14-08 SNB PHH 1 38

Repeaters Laag 1 Signaalversterking Paar bittijden vertraging

Stukje preamble Geen buffer Dus maximaal 3 in ieder pad

Page 20: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

20

Apr-14-08 SNB PHH 1 39

Repeaters Voorbeelden

• 3Com hub• knoeihubje• UB enclosure

Dom• Laat alles door• Naar alle poorten

Hub = multiport repeater Geen netwerkadres nodig voor functioneren

• Wel voor eventuele management module

Apr-14-08 SNB PHH 1 40

Bridge (switch) Laag 2 Pakket aanpakken en doorgeven Meer vertraging Timing begint opnieuw

Bittijden opnieuw gegenereerd Pakket wordt wel ongewijzigd doorgestuurd

Geen mogelijkheid tot detectie van loops Spanning Tree Protocol

Buffer

Page 21: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

21

Apr-14-08 SNB PHH 1 41

Bridge (switch) Meer dan 3 achter elkaar mogelijk

Aparte Ethernet (laag 1) segmenten Intelligent

Hoeft niet alles door te laten Tabel met (MAC) adressen per poort

• Kan dus aan de enig goede poort afleveren Alleen ‘flooding’ bij onbekend adres

Switch = multiport bridge Geen netwerkadres nodig voor functioneren

wel voor evt management module

Apr-14-08 SNB PHH 1 42

De netwerk ramp

Pakketten die rond blijven lopen

IP (laag 3) TTL veld in header

Ethernet (laag 2) Pakketten worden ongewijzigd doorgegeven Van te voren een ‘loop-free’ topologie maken

Page 22: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

22

Apr-14-08 SNB PHH 1 43

Spanning Tree Protocol

Protocol tussen switches onderling Kiest een ‘root bridge’ Zet ports die een loop vormen ‘Blocked’ Rest ‘Forwarding’

Normaal heel voorzichtig Pas forwarding als het echt kan 2 maal 15 seconden

Apr-14-08 SNB PHH 1 44

Spanning Tree Protocol

Host poorten ‘portfast’ Direct ‘Forwarding’ Geen 30 seconden wachten Wel attent op loops

BPDU pakketten

Page 23: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

23

Apr-14-08 SNB PHH 1 45

Spanning Tree Protocol

Common STP Per vlan STP Rapid STP

Apr-14-08 SNB PHH 1 46

VLAN Verschillende laag 2 netten

Binnen een switch of cluster switches Begrensd door de router

Switchport wordt in vlan gezet Softwarematige configuratie

Switchkoppelingen zijn ‘trunks’ Meer dan 1 vlan over een trunk

Management in apart vlan vlan 1

Page 24: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

24

Apr-14-08 SNB PHH 1 47

Inter-vlan verkeer

In de switch niet mogelijk Op Ethernet gescheiden netten

Externe router De router in het knooppunt…

Apr-14-08 SNB PHH 1 48

VLAN trunks

Extra velden in de Ethernet header TPID is 0x8100 (Tagged Ethernet frame) Tag is TOS en VLAN

Alleen op trunks Niet op ‘plat’ Ethernet

Page 25: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

25

Apr-14-08 SNB PHH 1 49

Router Laag 3 Pakket aanpakken Pakket uitpakken

Laag 2 eraf Doorsturen betekent opnieuw in laag 2 inpakken

Op laag 2 dus een ander pakket Laag 3 headers aangepast (max hop count) Op laag 3 dus loop detectie

Buffer

Apr-14-08 SNB PHH 1 50

Router

Verschillende IP netten Geen restricties wat aantal betreft Wel hop count in laag 3 protocol

Meerdere IP adressen nodig 1 per IP net Minstens 1 per interface

Page 26: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

26

Apr-14-08 SNB PHH 1 51

IP Best effort

Doe je best, maar beloof niets Pakket stuk = pakket weg Problemen (congestie, buffer vol) = pakket weg Geen acknowledgements TimeToLive (hopcount) Pakketten kunnen niet eindeloos zwerven

ICMP bij problemen TTL exceeded Congestie Maar niet pakket stuk (weggooien)

Apr-14-08 SNB PHH 1 52

IP Host - to - host Data bevat andere protocollen / headers

ICMP Internet Control Message Protocol TCP Transmission Control Protocol UDP User Datagram Protocol

IP zelf als data in datalink laag Ethernet TokenRing ATM HDLC Of direct over medium (SLIP)

Page 27: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

27

Apr-14-08 SNB PHH 1 53

IP

Apr-14-08 SNB PHH 1 54

IP Header

Page 28: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

28

Apr-14-08 SNB PHH 1 55

IP Protocollen

ICMP 1IGMP 2TCP 6UDP 17GRE 47

Apr-14-08 SNB PHH 1 56

Encapsulatie in Data layer

Iedere laag zet er een header voor Header+data laag x = data laag x-1

Page 29: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

29

Apr-14-08 SNB PHH 1 57

Fragmentatie MTU

Niet iedere datalink laag kan even grote pakketten aan Maximum Transmission Unit

• Ethernet 1500• SLIP/PPP 576• ATM 4470• TokenRing 4464

Fragmentatie Als het pakker groter is dan de MTU Pakket onderverdelen in fragments En weer aan elkaar lijmen

Apr-14-08 SNB PHH 1 58

Fragmentatie Packet reassembly

Brokken aan elkaar lijmen Reassembly timer ICMP als niet alle fragments er op tijd zijn

MTU Path Discovery Don't fragment bit in IP header

Pakket te groot betekent dus weggooien Melden via ICMP

Problemen melden (ICMP)

Page 30: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

30

Apr-14-08 SNB PHH 1 59

IP adressen

32 bits (versie 4) Dotted Decimal /24 netwerk

24 bits subnet mask 8 bits host adres 255.255.255.0

Speciale adressen host-zeros ongebruikt host-ones directed broadcast all-zerosongebruikt all-ones local broadcast

Apr-14-08 SNB PHH 1 60

Private space RFC1918

10.0.0.0/8 172.16.0.0/12 192.168.0.0/16

Kan nooit “in het wild” voorkomen Achter firewall NAT

Network Address Translation Verschillende IP werelden binnen en buiten NAT box vertaalt adressen/port nummers

Eiland netjes Niet routeren over publieke internet

Moet je zelf regelen

Page 31: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

31

Apr-14-08 SNB PHH 1 61

IP Versie 6 Meer adresruimte (128 bits) Nog ver aan de horizon Al enkele implementaties

CISCO vanaf 12.2 FreeBSD vanaf 4.0 MacOS vanaf 10.3 Windows vanaf XP ...

Het wachten is op de ‘killer applicatie’ Surfnet is klaar

Apr-14-08 SNB PHH 1 62

ARP

Address Resolution Protocol Afbeelding IP adres op MAC adres Ethernet Broadcast

Direct op Ethernet Eenvoudig vraag/antwoord

Wie heeft IP 145.18.45.254? Ik, 00:20:af:75:f9:be heb 145.18.45.254

Page 32: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

32

Apr-14-08 SNB PHH 1 63

ARP

Broadcast Wie is xx.xx.xx.xx Vertel aan yy.yy.yy.yy op zz:zz:zz:zz:zz:zz

A arpt B Automatisch A in arpcache B Antwoord B gaat in arpcache A

Apr-14-08 SNB PHH 1 64

ARP

Proxy arp Arp voor iemand anders

Arp cache Niet voor ieder pakket arpen Timeout (router 4 uur)

Page 33: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

33

Apr-14-08 SNB PHH 1 65

Local delivery

Eigen adres met subnet mask Ander adres met subnet mask Gelijk, dus op zelfde net Sturen naar de bestemming

Apr-14-08 SNB PHH 1 66

Non-local delivery

Eigen adres met subnet mask Ander adres met subnet mask Verschillend, dus ander net Sturen naar de router

Die weet het

Page 34: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

34

Apr-14-08 SNB PHH 1 67

Routering

Router Route tabel Routeringsprotocol

Apr-14-08 SNB PHH 1 68

Router Multihomed host

Meer dan 1 IP adres Meer dan 1 interface

Packet forwarding Tussen de IP adressen

Kan een gewone computer zijn Unix Default geen packet forwarding (RFC 1122/1123)

Of speciale hardware Meer features Sneller CISCO

Page 35: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

35

Apr-14-08 SNB PHH 1 69

Routervan klein

Apr-14-08 SNB PHH 1 70

Routertot groot

Page 36: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

36

Apr-14-08 SNB PHH 1 71

Routers Routeringstabel

Net xx.xx.xx.xx/y via zz.zz.zz.zz interface A Tabel komt tot stand via

• Routeringsprotocol• Directe entries

Niet in tabel betekent pakket weggooien• ICMP om te melden (net unreachable)• Niet ‘zoeken’ waar het heen moet• Weten, en niet weten is weg

Null route (putje)

Apr-14-08 SNB PHH 1 72

Routers Routerings protocol

Automatische opbouw tabel OSPF, RIP, BGP, ...

Statische routes Handmatige opbouw tabel Kan door routeringsprotocol verder bekend worden

Hosts altijd statische entry (default router) Eventueel uit DHCP

UvAnet: router op eerste IP adres in IP net

Page 37: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

37

Apr-14-08 SNB PHH 1 73

Routeringstabellen

Apr-14-08 SNB PHH 1 74

Secondary IP Meer dan 1 IP net op hetzelfde Ethernet interface

IP verkeer tussen de netten• Via de router, zoals altijd• Zelfde interface in en uit

Op Ethernet niveau (laag 2) wel 1 net (broadcast domain) Voor andere protocollen vaak ook

• VinesIP• AppleTalk• IPX (Novell)

Vaak bij tekort aan routerinterfaces Of heel kleine netjes

Niet alles kan op de secundaire netten• DHCP-relay tricky

Page 38: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

38

Apr-14-08 SNB PHH 1 75

Laag 4

ICMP UDP TCP

Apr-14-08 SNB PHH 1 76

ICMP IP Control Message Protocol 't Knechtje

ping• ICMP echo

Echo request Echo reply

Foutmeldingen• Waar de afzender iets aan kan doen• Niet beschadigd pakket!

Uitzoekwerk• Router discovery (verouderd)• Subnetmask discovery (idem)

Page 39: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

39

Apr-14-08 SNB PHH 1 77

ICMP foutmeldingen Host unreachable

Van de 'laatste' router Net unreachable

Van een router onderweg Ook als verkeer niet mag

• access-list Port unreachable

Van de host TTL exceeded

traceroute echt fout

Fragment needed but don't fragment set Nooit error - on - error

Apr-14-08 SNB PHH 1 78

UDP

User Datagram Protocol Simpel 65535 UDP ports (loketten)

Well known ports 'Best effort'

Als IP

Page 40: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

40

Apr-14-08 SNB PHH 1 79

UDP Geen fancy features

Geen ack Geen hertransmissies Net als IP, probleem dan pakket weg Out - of - order delivery Problemen oplossen in applicatieprotocol Net zo (on)betrouwbaar als IP

Efficient Broadcast Multicast

Apr-14-08 SNB PHH 1 80

UDP header

Waar staan Source IP ? Destination IP ?

Page 41: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

41

Apr-14-08 SNB PHH 1 81

UDP

Service altijd achter dezelfde port Port niet voor iets anders gebruiken Services file

/etc/services onder unix Lijst bij iana.org

DNS 53/udpDHCP/Bootp 67/udp, 68/udptftp 69/udpntp 123/udpsyslog 514/udp

Apr-14-08 SNB PHH 1 82

TCP End - to - end connection (‘Pijp’)

Opzetten Acknowledgements Hertransmissies Afbreken

Betrouwbaar Niets raakt weg Niets gaat stuk Alles komt in volgorde aan

Flow control Veel meer overhead dan UDP

Page 42: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

42

Apr-14-08 SNB PHH 1 83

TCP Bytestream

Bidirectioneel Geen “pakketten”

• byte sequence number• byte acknowledgement

Veel facilitieiten / probleemoplossing ondergronds door TCP zonder dat de applicatie het beseft

Beide partijen kunnen sluiten RESET Maar, geen broadcast, geen multicast

Apr-14-08 SNB PHH 1 84

Well-known ports

Service altijd achter dezelfde port Port niet voor iets anders gebruiken Services file

/etc/services onder unix Lijst bij iana.org

ftpdata 20/tcpftp 21/tcpssh 22/tcpTelnet 23/tcpsmtp 25/tcpfinger 79/tcphttp 80/tcppop 110/tcpnntp 119/tcp

Page 43: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

43

Apr-14-08 SNB PHH 1 85

TCP Startup

Apr-14-08 SNB PHH 1 86

Window Geen start - stop protocol

Sliding window Efficient gebruik van bandbreedte End - to - end acknowledgement

Tussenliggende stations spelen geen rol Ontvanger geeft aan hoeveel hij kan hebben Zender mag altijd dit aantal sturen Ontvanger ackt wat goed ontvangen is Zender onderneemt hertransmissie

bij uitblijven ack

Page 44: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

44

Apr-14-08 SNB PHH 1 87

Slow start

Client en server beiden op gigabit Traag stuk ertussen (64 kbit) Server stuurt compleet window (8 MTU) Tijdens transport eerste pakket op 64k

• Hertransmissietimer• Alle acht opnieuw• Gaat dus niet goed!

Slow start• Send window begint als 1• Bij iedere succesvolle ack verdubbelt send window

tot aan receive window Congestion avoidance

• Ack missen is send window verkleinen

Apr-14-08 SNB PHH 1 88

TCP header

IP header Source IP Destination IP

Flags SYN FIN ACK RESET

Page 45: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

45

Apr-14-08 SNB PHH 1 89

TCP voor Transacties, TTCP

SYN, data, FIN in een pakket Efficienter voor korte transacties

Database http (vooral kleine GIFjes)

Apr-14-08 SNB PHH 1 90

Hogere lagen

DNS Traceroute DHCP SNMP

Page 46: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

46

Apr-14-08 SNB PHH 1 91

DNS

Domain Name System BIND Domains Records Reverse DNS

Apr-14-08 SNB PHH 1 92

Leesvoer

DNS and Bind 4th edition Paul Albitz, Cricket Liu O’Reilly

http://www.isc.org/bind RFC 1034, 1035

Page 47: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

47

Apr-14-08 SNB PHH 1 93

Wat is DNS?

Wereldwijde gedistribueerde database Beeldt namen af op IP adressen

(en terug) Extra informatie

Mail MX record

Apr-14-08 SNB PHH 1 94

Wat is BIND

Berkeley Internet Name Daemon Een Domain Name Server implementatie Unix named process Internet Software Consortium Freeware, source distribution ftp.isc.org

Page 48: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

48

Apr-14-08 SNB PHH 1 95

Client - Server Communicatie

UDP port 53 Meeste transactions More information bit, opnieuw via TCP

TCP port 53 Als het niet past in één UDP pakket Zone transfer

Apr-14-08 SNB PHH 1 96

Unieke namen

Hierarchische name space Componenten gescheiden door een punt

• a..z, 0..9, -, .• Fully Qualified Domain Name eindigt op .• Anders ‘current origin’ erachter• Dubbele domainnaam…

mail.ic.uva.nl.ic.uva.nl.

Single root (.) Case insensitive

Page 49: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

49

Apr-14-08 SNB PHH 1 97

Top level domains

Landen code ISO 3166 two letter codes

Generiek .aero, .biz, .com, .coop, .edu, .gov, .info, .int,

.mil, .museum, .name, .net, .org, and .pro Infrastructuur

.arpa

Apr-14-08 SNB PHH 1 98

ccTLD

.nl Nederland .us USA .be Belgie .de Duitsland .at Oostenrijk En nog veel meer (.is, .to, .tv, .fm, .nu)

Page 50: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

50

Apr-14-08 SNB PHH 1 99

Generiek TLD .aero members of the air-transport industry .biz businesses .com .coop cooperative associations .info .museum museums .name individuals .net .org noncommercial community .pro credentialed professionals .gov government (U.S.) .edu higher education (U.S.) .mil military (U.S.) .int international treaties

Apr-14-08 SNB PHH 1 100

DNS records

SOA Start Of Authority NS NameServer A Address CNAME Canonical (real) NAME is MX Mail eXchanger PTR PoinTeR

Page 51: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

51

Apr-14-08 SNB PHH 1 101

Time To Live

Elk record heeft TTL Iedereen mag record in cache bewaren

Gedurende de TTL Daarna niet meer

TTL is meestal 86400 seconden (1 dag)

Apr-14-08 SNB PHH 1 102

Root nameservers 13 root servers wereldwijd (waarom) root-servers.net domain Iedere nameserver heeft lijst root servers

a va.us 198.41.0.4 h md.us 128.63.2.53b ca.us 128.9.0.107 i no 192.36.148.17c va.us 192.33.4.12 j va.us 192.58.128.30d md.us 128.8.10.90 k uk 193.0.14.129e ca.us 192.203.230.10 l ca.us 198.32.64.12f ca.us 192.5.5.241 m jp 202.12.27.33g va.us 192.112.36.4

Page 52: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

52

Apr-14-08 SNB PHH 1 103

DNS Lookup

Query start bij root server Root server geeft geen antwoord Maar een hint naar iemand die meer weet Tot het antwoord gevonden is Alle informatie gaat de cache in

TTL

Apr-14-08 SNB PHH 1 104

DNS

Host resolver recursieve query PC, Mac, ...

Nameserver iteratieve query Caches vullen

Geen recursieve query op zwaar belasteserver root server

Page 53: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

53

Apr-14-08 SNB PHH 1 105

Iteratief opzoeken

Resolver herhaalt zoekactie Iedere keer dichter bij het resultaat Alle tussenliggende informatie in cache Hergebruik informatie uit cache

Apr-14-08 SNB PHH 1 106

Recursief opzoeken

Laat iemand anders itereren Makkelijker voor simpele resolvers (PC) Nameserver cache vullen

Recursion disabled op root servers Waarom?

Page 54: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

54

Apr-14-08 SNB PHH 1 107

DNS lookup aan ns1.uva.nl, wat is www.vu.nl ns1 vraagt

www.vu.nl -> A.ROOT-SERVERS.NET• kweenie, NS.DOMAIN-REGISTRY.nl weet meer

(nl. server)

www.vu.nl -> NS.DOMAIN-REGISTRY.nl• kweenie, ns.vu.nl weet meer

(vu.nl server)

www.vu.nl -> ns.vu.nl• 130.37.129.100

Apr-14-08 SNB PHH 1 108

DNS Lookup Wie het toevallig weet geeft het antwoord

Volgende keer meteen antwoord (uit decache)

TTL authoritative vs non-authoritative

primary / secondary altijd authoritative Uit de cache altijd non-authoritative

Page 55: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

55

Apr-14-08 SNB PHH 1 109

DNS Lookup

Meestal UDP, soms TCP UDP geknipt voor dit soort vraag/antwoord Maar de MTU van het net

• Deel in UDP antwoord• Aanduiding ‘maar er is meer’• client vraagt opnieuw via TCP• Zone transfer altijd TCP

Apr-14-08 SNB PHH 1 110

Reverse DNS

Van nummer naar naam Reverse IP address, in-addr.arpa domainmail.ic.uva.nl. A 145.18.240.1717.240.18.145.in-addr.arpa. PTR mail.ic.uva.nl. Reverse DNS is aparte structuur

UvAnet: Reverse DNS uit automaat

Page 56: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

56

Apr-14-08 SNB PHH 1 111

Delegation Nameserver heeft geen informatie van domain Maar delegeert naar een andere nameserver

Ga maar daar vragen!

Iedere punt is mogelijk delegatie punt NS records

in-addr.arpa domain werkt net zo Classfull nets

Apr-14-08 SNB PHH 1 112

Delegatie

Page 57: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

57

Apr-14-08 SNB PHH 1 113

Forward en reverse DNS

Apr-14-08 SNB PHH 1 114

Replicatie DNS is robuust door data replicatie Primary (master) vs. Secondary (slave) Primary heeft data Secondary haalt data van primary Primary en secondary equivalent

Data van secondary is net zo goed

Ondergrondse communicatie zone transfer

Page 58: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

58

Apr-14-08 SNB PHH 1 115

Data organisatie op server

Data georganizeerd in ‘zones’ Alle data van een zone in één file Delegatie punten

Een zone wordt als één geheel behandeld Zone transfer

Apr-14-08 SNB PHH 1 116

Master/slave communicatie

Master informeert slave bij wijzigingen Notify naar alle servers in NS records

Slave acknowledget Notify Slave haalt zone op Slave checkt ook iedere Refresh time Slave gooit data na Expiry time weg

Indien geen contact meer met master

Page 59: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

59

Apr-14-08 SNB PHH 1 117

Anatomie van een zone file

; commentaar Begin bevat

$TTL directive SOA record

• Serie nummer, timers Nameserver pakt alleen data als serienummer hoger Datum is handig: 2003020401

NS records @ is ‘current origin’ (domain)

Apr-14-08 SNB PHH 1 118

Zone begin;$TTL 86400;@ IN SOA barlaeus.ic.uva.nl. hostmaster.uva.nl. (

2003013101 ; Serial 28800 ; Refresh 8 hours 7200 ; Retry 2 hours 604800 ; Expire 1 week 86400 ) ; Default TTL 1 day

@ IN NS barlaeus.ic.uva.nl.IN NS ns1.uva.nl.IN NS ns2.uva.nl.

Page 60: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

60

Apr-14-08 SNB PHH 1 119

Mail

@ IN A 145.18.68.50IN MX 100 tasman.ic.uva.nl.IN MX 200 barlaeus.ic.uva.nl.

MX records geven Mail eXchanger aan Eerst beste (laagste) proberen Volgende indien niet bereikbaar

Apr-14-08 SNB PHH 1 120

Hosts

Alle hosts als A record Netten bijelkaar houden Op volgorde Blanko regels voor gaten Kan dienen als IP administratie

ns1 IN A 145.18.39.16stratum1 IN A 145.18.39.18

news 500 IN A 145.18.40.40ns2 IN A 145.18.40.50

Page 61: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

61

Apr-14-08 SNB PHH 1 121

Aliasen (CNAME)

CNAME geeft de echte naam Waar de data staat

ftp IN CNAME hebe.uva.nl.smtp IN CNAME hebe.uva.nl.campusftp IN CNAME barlaeus.ic.uva.nl.ns IN CNAME barlaeus.ic.uva.nl.chime IN CNAME barlaeus.ic.uva.nl.ldap IN CNAME vdhoop.ic.uva.nl.

Apr-14-08 SNB PHH 1 122

WIjzigingen Uitgegeven data expireert alleen door TTL

Echt alleen door de TTL Gedurende de hele TTL blijft oude data

In allerlei DNS caches Op geen enkele manier te verwijderen TTL wachten

Meestal geen probleem (PC toevoegen) Maarre:

Page 62: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

62

Apr-14-08 SNB PHH 1 123

Wijzigingen

Aan belangrijke services Mail service, Web service, …

In 3 stappen TTL op record omlaag (600 seconden)

• Minstels de huidige TTL tevoren (24 hours!) Maak de wijziging, TTL blijft 600

• Zo kan je fouten herstellen TTL terug naar normaal

• Als alles goed lijkt te gaan!

Apr-14-08 SNB PHH 1 124

Opzoeken

nslookup (win, unix) -q=type (SOA, A, MX, NS, …) nslookup [-q=xx] host server

Interactive mode• set qtype=type (SOA, A, MX, NS, …)• Server host• ls domain (complete zone)

Page 63: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

63

Apr-14-08 SNB PHH 1 125

Opzoeken

host (unix) host [-t xx] host nameserver host -l domain

Network Utility (Mac)

Apr-14-08 SNB PHH 1 126

Lijst root servers

Hoe blijft dat up to date?

Iedere nameserver heeft ‘hints lijst’ In principe de lijst root servers Haal bij opstarten de lijst opnieuw op

• Bij een van de root servers

Werkt zolang minstens 1 van de hinst leeft

Page 64: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

64

Apr-14-08 SNB PHH 1 127

Traceroute Spelen met de TTL

ICMP TTL Exceeded• TTL = 1

Eerste router stuurt ICMP TTL Exceeded en maakt zich dus bekend Altijd van de kant van de router die naar jou gericht is Primary adres

• TTL = 2 Tweede router stuurt ICMP TTL Exceeded

• En zo verder

Hele pad in kaart brengen

Apr-14-08 SNB PHH 1 128

Traceroute

Route door netwerk bepalen Spelen met de TTL

Page 65: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

65

Apr-14-08 SNB PHH 1 129

Traceroute

traceroute to info2.surfnet.nl (192.87.5.150): 1-30 hops, 38 byte packets 1 feth5-1-0-3.omhp-r1.net.uva.nl (145.18.240.1) 1.36 ms 1.31 ms 1.27 ms 2 feth1-1-1-2.wcw-r1.net.uva.nl (145.18.254.13) 4.1 ms 2.43 ms 1.27 ms 3 BR7.Amsterdam.surf.net (145.41.10.57) 4.13 ms 3.46 ms 3.10 ms 4 BR1.Delft.surf.net (145.41.7.38) 7.19 ms 9.30 ms 6.36 ms 5 BR2.Eindhoven.surf.net (145.41.7.34) 4.39 ms 4.4 ms 6.53 ms 6 AR2.Nijmegen.surf.net (145.41.7.234) 8.55 ms 6.62 ms 7.41 ms 7 info2.surfnet.nl (192.87.5.150) 6.95 ms 8.51 ms 6.58 ms

Apr-14-08 SNB PHH 1 130

DHCP

Configuratie management Protocol Leases Relay Client

Page 66: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

66

Apr-14-08 SNB PHH 1 131

Om te lezen

The DHCP HandbookRalph Droms, Ted LemonMacMillan, ISBN 1-57870-137-6

http://www.isc.org/dhcp RFCs

2131 - Dynamic Host Configuration Protocol 2132 - DHCP Options

Apr-14-08 SNB PHH 1 132

DHCP doelen

Automatische configuratie Network parameters

IP address, netmask, router Andere parameters

Domain name Name servers etc

Uitbreidbaar

Page 67: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

67

Apr-14-08 SNB PHH 1 133

DHCP Geen IP adres krijgen, maar ‘huren’

lease voor bepaalde tijd verlengen als nog langer nodig

Apr-14-08 SNB PHH 1 134

DHCP

Local UDP broadcast 255.255.255.255 Komt dus niet voorbij router DHCP Relay agent nodig als server ‘buiten’ eigen net

• Kan router doen• Request gaat als unicast verder• Relay agent ontvangt en distribueert antwoord• Relay agent vult eigen adres in request in

Page 68: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

68

Apr-14-08 SNB PHH 1 135

Hoe werkt DHCP

‘Schone’, vers gestarte machine Weet niets Kan alleen broadcasten

Localnet, 255.255.255.255 Broadcast, dus UDP!

• DHCP server in lo kale net!• Of een Relay Agent

Apr-14-08 SNB PHH 1 136

DHCP Protocol

DHCPDiscover• Help, kan iemand mij van een adres voorzien

DHCPOffer• Ja, ik heb xx.xx.xx.xx voor je in de aanbieding

DCHPRequest• Ja, doe mij maar xx.xx.xx.xx

DHCPAck• OK, je krijgt xx.xx.xx.xx voor yyy tijd

DHCPNak• NEE, je kan xx.xx.xx.xx niet krijgen

client begint overnieuw met DCHPDiscover

Page 69: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

69

Apr-14-08 SNB PHH 1 137

DHCP communicatie

DHCPDiscover Client -> Server Zijn daar DHCP servers?

DHCPOffer Server -> Client Ja. Ik heb dit mooie IP adres voor je

DHCPRequest Client-> Server Prachtig, die wil ik wel hebben

DHCPAck Server->Client OK, mag je voor een uur gebruiken

Apr-14-08 SNB PHH 1 138

DHCP

DHCPInform Geeft extra configuratie voor wie geen IP

adres least Als de lease bijna verloopt

DHCPRequest• vraag om verlenging

DHCPAck of DHCPNak• Ja of nee

Meestal halverwege lease

Page 70: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

70

Apr-14-08 SNB PHH 1 139

Extra configuratie

Veel is gedefinieerd IP address/Subnet mask/Default gateway Name server/domain naam WINS server NTP server Te veel om op te noemen

Apr-14-08 SNB PHH 1 140

Waar de DHCP server

In het lokale net Hoort de broadcasts En kan terug broadcasten

Page 71: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

71

Apr-14-08 SNB PHH 1 141

Waar de DHCP server

Elders Wel een relay agent in het lokale net Relay stuurt request als unicast naar server Relay broadcasts antwoord terug naar client Relay voegt eigen IP adres aan request toe

Apr-14-08 SNB PHH 1 142

DHCP pakket

op 1=from client, 2=serverhtype 1=ethernethops number of relaysciaddr client’s IP addressyiaddr your IP addresssiaddr server’s IP addressgiaddr gateway’s IP addresschaddr client’s MAC addressoptions various options

Page 72: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

72

Apr-14-08 SNB PHH 1 143

DHCP Optiesmessage type DHCPDiscover etcsubnet maskRouter aka default gatewayDNS serverdomain nameNTP serverARP cache timeoutWINS server

En nog veel meer (ongeveer 80)

Apr-14-08 SNB PHH 1 144

Leases, lease file Server heeft administratie nodig

Vrije leases Actieve leases IP adresen Verlenging leases

File op server Vreselijk formaat Toevoegen aan het eind

• Per lease verschillende entries, laatste telt Opnieuw uitgeschreven als ie te groot wordt

Page 73: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

73

Apr-14-08 SNB PHH 1 145

Client Afhankelijk van client OS In de network settings

Windows• Network - TCP - Properties

“Obtain an IP address automatically” MacOS

• System Preferences - Network (OS-X)• Control panels - TCP/IP (OS-9 and below)

“Configure using DHCP”

Met een script Unix variants

• Dhclient• /etc/rc.conf

Apr-14-08 SNB PHH 1 146

SNMP

Simple Network Management Protocol Traps Variabelen

Page 74: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

74

Apr-14-08 SNB PHH 1 147

SNMP

Standaard manier om variabelen te bekijken (get) te veranderen (set)

UDP port 161 SNMP community string (“password”)

get (R) set (R/W)

Apr-14-08 SNB PHH 1 148

Netwerk management Op basis van SNMP

HP Openview (divers) CiscoWorks (CISCO apparatuur) TranCend (3Com apparatuur) Netdirector (UB apparatuur) en nog veel meer

Standaard IP communicatie (UDP) Kan dus overal vandaan

Remote Management Niet meer fietsen

Page 75: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

75

Apr-14-08 SNB PHH 1 149

Poll vs. Trap

Poll Client haalt variabele op

Trap Server heeft iets te melden

• Interface updown

Apr-14-08 SNB PHH 1 150

Variabelen Statisch

Soort node• router• bridge• repeater• etc

Fabrikant Contact informatie Netwerk management software kan apparatuur

identificeren Auto Discovery

Page 76: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

76

Apr-14-08 SNB PHH 1 151

SNMP

Dynamisch Uptime Load Error counters

Apr-14-08 SNB PHH 1 152

SNMP

Configuratie port enable/disable adres snelheid

In principe alles mogelijk SNMP is alleen framewerk MIB

Page 77: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

77

Apr-14-08 SNB PHH 1 153

Voorbeeld

Apr-14-08 SNB PHH 1 154

Voorbeeld

Page 78: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

78

Apr-14-08 SNB PHH 1 155

Hierarchische structuur Standaard tree Vendor tree

Product tree Management Information Base

MIB Definieert welke variabele bestaat Definieert type Definieert naam

Intern nummertjes 1,4,34,2,55,10

Apr-14-08 SNB PHH 1 156

Filtering

Access-list Wat kan en wat kan niet Firewall

Page 79: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

79

Apr-14-08 SNB PHH 1 157

Filtering

Ieder apparaat kan filteren Waar een pakket langskomt Ieder op zijn eigen niveau

Meestal in de router Verkeer naar / van buiten Geen verkeer binnen het lokale netje

Apr-14-08 SNB PHH 1 158

Access-list

Van 1 naar 2 Ingaand eth0 Uitgaand eth1

Van 2 naar 1 Ingaand eth1 Uitgaand eth0

Page 80: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

80

Apr-14-08 SNB PHH 1 159

Ingaand/Uitgaand

Gezien vanuit de router Een plek (van de 4) voldoende

Om communicatie te blokkeren Machine beschermen

Uitgaand op machineinterface Machine afrasteren

Inkomend op machineinterface

Apr-14-08 SNB PHH 1 160

Waarop filteren

permit of deny IP nummer / wildcard (don’t care bits)

145.18.68.0 0.0.0.31 Protocol

ip, tcp, udp, icmp tcp en udp ook op poort

Eenvoudige, stateless inspectie pakket

Page 81: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

81

Apr-14-08 SNB PHH 1 161

Wat kan eenvoudig

Een machine afsluiten beperken toelaten

Een service afsluiten beperken toelaten

Apr-14-08 SNB PHH 1 162

Wat is lastig Lokale services blokkeren, maar Locale clients toelaten

TCP en UDP zijn symmetrisch

Client gebruikt toevallig source port 12345 Uitgaande port willekeurig

Server achter port 12345

Page 82: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

82

Apr-14-08 SNB PHH 1 163

Dus:

Webservers in het net blokkeren deny van daar naar hier op port 80

Webclients in het net blokkeren deny van daar port 80 naar hier

Is te doen

Apr-14-08 SNB PHH 1 164

Maar:

In dit net is de webserver bereikbaar Alle client verbindingen mogen Geen verdere services in het net

Dat kan niet met een eenvoudig filter

Page 83: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

83

Apr-14-08 SNB PHH 1 165

Anders gezegd

Alles mag, behalve Kan met eenvoudig, stateless filter

Niets mag, behalve Eist meer

Apr-14-08 SNB PHH 1 166

Stateful firewall

Meer status bewaren Bijhouden wat er aan verkeer langskomt

Meekijken in de datastroom

Page 84: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

84

Apr-14-08 SNB PHH 1 167

Firewall

“Statefull” pakketinspectie Inhoud pakket wordt bekeken

Hoger dan alleen laag 3 Statustabellen bijwerken Wel of niet doorlaten

Apr-14-08 SNB PHH 1 168

Moeilijk

ftp

Extra tcp stream voor data wordt in de command stream afgesproken

En zo zijn er meer

Page 85: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

85

Apr-14-08 SNB PHH 1 169

Firewall waar? Border router

“Corporate Firewall” Regels gelden voor iedereen

Access router “Institute Firewall” Regels gelden voor het hele subnet

Eigen machine “Personal Firewall” Beheer?

Apr-14-08 SNB PHH 1 170

Standaard instelling

Uitgaand verkeer mag altijd Retourverkeer toelaten

Inkomend verkeer alleen specifieke zaken bijv. webservice

Rest mag niet

Page 86: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

86

Apr-14-08 SNB PHH 1 171

Documentatie

RFC Boeken

Apr-14-08 SNB PHH 1 172

IP documentatie RFC Request for Comment

STD Standards BCP Best Current Practice FYI For Your Information

RFC's veranderen nooit Aanvullingen via nieuwe RFC Compleet nieuwe RFC

• - obsoleted by RFCxxx RFC index

Op vele plaatsen op het internet Dichtstbij

• ftp://ftp.uva.nl/rfc

Page 87: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

87

Apr-14-08 SNB PHH 1 173

NetworkAddress

TranslationEen adres voor meer PCs

Apr-14-08 SNB PHH 1 174

Eerst even dit

Don’t try this at work UvAnet aansluitvoorwaarden Gij zult niet routeren

Page 88: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

88

Apr-14-08 SNB PHH 1 175

Situatie

4 machines aan een ADSL aansluiting Maar…

Slechts 1 IP adres beschikbaar

Apr-14-08 SNB PHH 1 176

Oplossing

Gebruik een private space net (RFC1918) En laat de router vertalen

Network Address Translation Port Address Translation

Page 89: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

89

Apr-14-08 SNB PHH 1 177

Ofwel

Alle verkeer met 1 IP adres naar buiten Meer dan alleen packet switching

Tabel met vertalingen

Apr-14-08 SNB PHH 1 178

Voorbeeld

NAT router houdt vertaaltabel bij Een entry per actieve verbinding Alles dat niet in de tabel staat is onbereikbaar! Statische entries voor interne services Dynamische entries komen en gaan

• Bij TCP open en TCP close• Timeout

Page 90: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

90

Apr-14-08 SNB PHH 1 179

Router doet dus meer

Normaal Laag 2 headers verwijderen Routeringstabel raadplegen Next hop bepalen IP header aanpassen

• TTL verlagen Nieuwe laag 2 headers voor next hop En versturen

Apr-14-08 SNB PHH 1 180

Router doet dus meer

Normaal Alleen kijken naar de IP header

• TTL aanpassen TCP of UDP header niet interessant

• Wordt niet naar gekeken• Wordt niet aangepast

Strict laag 3 (en niets erboven) En inkomend en uitgaand is hetzelfde

Page 91: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

91

Apr-14-08 SNB PHH 1 181

Router doet dus meer

NAT uitgaand IP + port opzoeken in vertaaltabel

• Eventueel nieuwe entry maken Vertalen (=IP en TCP header aanpassen) En versturen

• Laag 2 headers etc

Apr-14-08 SNB PHH 1 182

Router doet dus meer

NAT inkomend Port opzoeken in vertaaltabel Vertalen (IP en TCP header aanpassen) Onbekend (niet in tabel) pakket weggooien

• ICMP Port Unreachable

Page 92: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

92

Apr-14-08 SNB PHH 1 183

Router doet dus meer

Er is een buitenkant outside Public IP adressen

Er is een binnenkant inside Private space (RFC1918) IP adressen

Apr-14-08 SNB PHH 1 184

Veiligheid

NAT biedt als bijeffect veiligheid Interne services onbereikbaar Tenzij statisch geconfigureerd in router

Echter, geen pakket inspectie Geen enkele veiligheid voor open poorten

Page 93: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

93

Apr-14-08 SNB PHH 1 185

Enne, ftp?

Blijft speciaal Moet door NAT router speciaal worden

herkend behandeld

Protocol informatie in de data stroom

Apr-14-08 SNB PHH 1 186

En hoe in de router

Dat hangt ervan af Merk en type Ieder verschillend

Page 94: Netwerkprotocollen - OS3172.16.0.0/12 192.168.0.0/16 Kan nooit “in het wild” voorkomen Achter firewall NAT Network Address Translation Verschillende IP werelden binnen en buiten

94

Apr-14-08 SNB PHH 1 187

Ciscoip nat pool Us 171.69.232.2 171.69.232.2 netmask 255.255.255.252ip nat inside source list 1 pool Us overload!interface serial0 ip address 171.69.232.2 255.255.255.252 ip nat outside!interface ethernet0 ip address 192.168.1.1 255.255.255.0 ip nat inside!access-list 1 permit 192.168.1.0 0.0.0.255!ip route default serial0