### intro sulle reti

### Come funziona l’internet?

- via radio
- con le antenne telefoniche
- con cavi sottomarini
- con connessioni satellitari

#####

### Un po di sigle

Tanto per confonderci meglio, cerchiamo di capire cosa fanno questi diversi elementi

- ISP
- Router
- WAN
- LAN
- Host(s)
- WLAN

### Stack ISO/OSI

Possiamo dividere la rete internet, per come viene vista da un pacchetto, si puo’ suddividere in sette “strati”.

### Dall’alto verso il basso

Application Layer

- HTTP (Hypertext Transfer Protocol)
- SMTP (Simple Mail Transfer Protocol)

ce ne sono un sacco, ma chi decide? RFC, IETF

### Transport Layer

Come i dati vengono mandati, se controllando o meno gli errori durante la connessione.

- TCP (Transmission Control Protocol) - reliable data delivery
- UDP (User Datagram Protocol) - unreliable data delivery

### Network Layer

Qui per permettere agli host, più propriamente al sistema operativo,

Questo layer usa:

- IP (Internet Protocol) - Permette di instradare pacchetti da una host all’altro
- ICMP (Internet Control Message Protocol) - Errori, debug, che succede.

### Link Layer

Come vengono mandati fisicamente i dati nella ferraglia

- quanti modi vi vengono in mente?

### Paccheti che si instradano?

Abbiamo trovato un modo molto criptico di dire “dati che si muovono”, ma avviene cio'?

- MAC: 8 byte OUI (Organizational unique identifier) 8 univoci per scheda fisica
- IP
- Hostname

### Quindi, se visito un sito, che giro faccio?

### Layer Applicativo

    * Protocollo HTTP
    * Metodi: GET, POST, vari ed eventuali
    > GET / HTTP/1.1
    > Host: google.com

### Layer di trasporto

    - Porte
    - UDP
    - TCP

### Layer di Rete

    - IP: destinazione e sorgente

### Layer Fisico

    - Incapsula il pacchetto TCP/IP dentro un frame
    - ARP (Address Resolution Protocol)

### Quindi se vado su un sito che giro faccio?

### ROUTE, NETMASK, E ALTRE COSE ORRIBILI

- Ovvero, di cosa ha bisogno il mio computer per attaccarsi al router?
- IP, lo abbiamo visto
- GATEWAY, “da dove passare”, quindi l’IP del gateway
- NETMASK, il mio PC sa di essere in una sottorete, ma quanto e' grande?

Con questi ingredienti posso collegarmi al router!

### DHCP

E’ interessante cercare di capire come fa il router a farci collegare in automatico.

- DHCP
- DHCP DISCOVER
- DHCP OFFER
- DHCP REQUEST
- DHCP ACK
- Riusciamo a vederlo con wireshark?

### HTTP

Proviamo! Posso usare internet da terminale?

`curl https://www.wttr.in/turin`

### Developer Tools

Ovvero, avevate mai provato a premere F12 sul browser?

### GET

- parametri
- escaping
- content-type

eg. autocompletamento di startpage.com

### POST

- parametri
- dati

### Live - WS

pad.