Mémo réseau (principalement Linux)

Un mémorandum de ce que je n'ai pas compris en étudiant le réseau sous Linux (ubuntu18.04) Je vais le laisser ici.

netns(network namespace)

--PC Vous pouvez toujours créer un réseau indépendant Exemple: créer un réseau appelé hellorold avec sudo ip netns add helloworld

--sudo ip netns exec helloworld bash démarre bash sur helloworld. Sortie avec sortie --sudo ip netns delete Supprimer helloworld avec helloworld.

--Utilisez veth comme suit pour connecter les espaces de noms réseau

De plus, comme il est nécessaire de changer l'état du réseau de bas en haut, procédez comme suit - sudo ip netns exec ns1 ip link set ns1-veth0 up - sudo ip netns exec ns2 ip link set ns2-veth0 up

--Une table de routage est également requise pour la communication entre les routeurs. Par conséquent, les locales sont ajoutées à la table par un routage statique qui ajoute une table de routage en envoyant une commande. Les globaux effectuent un routage dynamique (des protocoles tels que BGP, OSPF, etc. sont utilisés)

pont

--Synonyme de hub de commutation

UDP

―― Un port est comme une pièce dans un appartement. Cela devient une valeur numérique de 16 bits.

--nc -ulnv ip (adresse) (numéro de port) Commencez en tant que serveur. "-U: communication UDP" "-L: Agir en tant que serveur" "-N: Empêche DNS de résoudre les adresses IP" "-V: pour afficher les commandes en détail" --nc -u ip (adresse) (numéro de port) Lancé en tant que client

tcp

--P est inclus dans l'indicateur de bit de contrôle lors de l'envoi d'une chaîne

Couche d'application

HTTP

Vous pouvez émettre une requête http sous la forme de

Vous pouvez démarrer le serveur de cette manière. A ce moment, la page affichée au moment de l'accès sera index.html sur le répertoire courant.

DNS

DHCP

――En tant que rôle --Allocation d'adresse IP --Création d'une table de routage

NAT(NAPT)

--Translate entre l'adresse locale et l'adresse globale.

--Utilisé sous Linux avec la commande iptables

Programmation socket en python

socket (): spécifiez quel type de communication est effectué dans le socket bind (): spécifiez l'adresse IP et le numéro de port pour écouter la connexion listen (): commencez à écouter une connexion accept (): traiter le client connecté (attendre la connexion dans cette fonction) send () / recv (): chaîne d'octets de réception close (): ferme la connexion

Autre

--127.0.0.1: adresse de bouclage. Utilisé lorsque vous souhaitez communiquer avec vous-même sur le réseau

--tcpdump: Capture (reniflement) des données tcp / ip circulant sur votre ordinateur

--Sans la table de routage, la communication vers l'extérieur n'est pas possible. --Pour voir la table de routage, "ip route show" --Une route par défaut est requise pour communiquer avec l'extérieur

Recommended Posts

Mémo réseau (principalement Linux)
Commandes réseau Linux
Notes d'étude Linux
Espace de noms réseau Linux
Notes d'installation d'Arch Linux
Pour moi: notes sur l'infrastructure et le réseau
Road to Intermediate Linux: Network Edition
Linux
Options de démarrage de Minecraft [Linux] Notes personnelles
Exploitez l'espace de noms réseau Linux avec Go
[Linux] [C / C ++] Remarques sur le système de construction Waf
[Bash / linux] Notes en cas de problème
Outils utilisés pour vérifier la communication réseau Linux
Désactivez IPv6 sur l'interface réseau dans CentOS Linux 8