[LINUX] Für mich: Infrastruktur- und Netzwerknotizen

Einführung

Ich habe viel vergessen, weil das Netzwerk schon lange besteht. Nach langer Zeit überprüfte ich das Netzwerk und lernte mehr. Notieren Sie sich hier den Inhalt. Wenn Sie einen Fehler machen oder einen Rat haben, wäre es hilfreich, wenn Sie mir freundlicherweise ~ mitteilen

TCP Dank L3 ist es möglich, Pakete an die andere Partei zu senden, aber ich weiß nicht, ob es tatsächlich angekommen ist. Also erhielt die andere Partei das Paket, als es ankam! Es ist TCP (Details werden weggelassen), das eine Regel zu lehren hat

Sie müssen die PORT-Nummer angeben, wenn Sie das Paket senden. Im Fall von TCP ist es auch erforderlich, das Paket von der anderen Partei zu empfangen, sodass der Anforderer auch die für diese Kommunikation verwendete PORT-Nummer angibt. Die Quell-PORT-Nummer wird unter [Dynamische / Private Port-Nummer (49152–65535)] ausgewählt. Mit anderen Worten, wenn Sie keine gleichzeitige TCP-Verbindung nach außen herstellen, die 65535-49152 = 16383 überschreitet und die Portnummer für diesen Ausgang überschreitet, ist dies grundsätzlich unmöglich. Quell-PORT ist auch für UDP erforderlich.

ARP http://www5e.biglobe.ne.jp/aji/3min/26.html

ARP ist ein L3-Protokoll, und Sie können die in der ARP-Anforderung enthaltene ARP-Antwort erhalten, indem Sie die ARP-Anforderung senden. Es kommt mit der angeforderten MAC-Adresse an, die in der ARP-Antwort enthalten ist. Auf diese Weise können Pakete auch dann zugestellt werden, wenn die ARP-Tabelle keine Ziel-Mac-Adresse hat.

ARP-Anwendungsfall Teil 4

Wenn Sie noch nie extern mit der manuell festgelegten statischen IP-Adresse kommuniziert haben, wird die Mac-Adresse nicht in der ARP-Tabelle der Bridge oder des Routers aufgezeichnet. In einer solchen Situation verwendet der Router ARP, um die Mac-Adresse der empfangenen Ziel-IP zu ermitteln.

firewall Ich öffne oft nur Port 80 mit Firewall. In diesem Fall werden auch Pakete mit dynamischen Portnummern verworfen, wenn alle Pakete mit anderen Ports als Port 80 als verloren eingestellt sind. In diesem Fall können Sie nicht über TCP kommunizieren. Natürlich ist es im Grunde genommen für In und Out, und die Sicherheitsüberlegungen und -einstellungen werden sich ändern. Im Fall von UDP ist es übrigens nicht erforderlich, einen Port für die Antwort mit einer dynamischen Portnummer zu sichern. Wenn also ein Client vorhanden ist, der garantiert nur UDP-Anforderungen stellt, können Daten auch dann nach außen gesendet werden, wenn alle Ports geschlossen sind. Masu.

NIC eh0 ist das 0. nic und eth1 ist das 1. nic Grundsätzlich ist es in Ordnung, ethN == nic zu erkennen Wenn Sie ein Paket an die physische Schicht senden, senden Sie ein Sendepaket an eth und eth sendet es an den Peer von eth. (Nic ist über ein einfaches Ethernet-Kabel mit einem Paar von Nics wie Bridge und Router verbunden. Das Paar heißt Peer.

Router-Erstellungskonzept

http://redhatlinux.kt.fc2.com/cont/router.htm Diese Seite ist detailliert. Wenn Sie nicht wissen, wie man "route -n" liest, können Sie diese Seite besuchen. https://xtech.nikkei.com/it/article/COLUMN/20080520/303086/ http://linux.kororo.jp/cont/intro/dgate.php

Der einfachste Router, der für die Konvergenz reserviert wurde, kann nur durch IP Forward realisiert werden. Hierbei handelt es sich um eine Technologie, die von einer Netzwerkkarte empfangene Pakete an eine andere Netzwerkkarte sendet. Um die IP-Weiterleitung unter Linux zu aktivieren, fügen Sie "net.ipv4.ip_forward = 1" zu "/ etc / sysctl.conf" hinzu und starten Sie das Netzwerk neu, um die IP-Weiterleitungsfunktion zu aktivieren.

ifconfig vs ip command ifconfig ist ein Befehl, der im Paket net-tools enthalten ist. Andere häufig verwendete Befehle wie route, netstat und arp sind ebenfalls im net-tools-Paket enthalten. Das Net-Tools-Paket ist derzeit veraltet.

Wie erstelle ich eine virtuelle Brücke?

Die Brücke kann aus einer der folgenden Optionen erstellt werden

An die Bridge können reale Geräte wie eth0 und virtuelle Geräte wie veth angeschlossen werden.

So erstellen Sie ein virtuelles Netzwerk

Wenn Sie eine virtuelle Netzwerkkarte erstellen und mit einer virtuellen Brücke verbinden, können Sie ein virtuelles privates Netzwerk erstellen.

Bei dieser Rate kann das private Netzwerk jedoch nicht mit dem Internet kommunizieren. Wenn Sie eine direkte Verbindung zu eth0 herstellen, ist eth0 diesmal belegt, und diejenigen, die nicht zum privaten Netzwerk gehören, können keine Verbindung zum Internet herstellen. Sie können dies also mithilfe von iptables und ip masquerading tun. Wenn Sie also die IP-Maskerade-Einstellung von Bridge wie Docker löschen, können Sie die Verbindung zum Netzwerk vollständig trennen.

IP-Maskerade (NAPT

Sie können IP-Maskerade verwenden, indem Sie iptables verwenden. Mit ip masquerade können Sie Port Forward- und Sicherheitsfunktionen sowie NAPT-Funktionen ausführen.

port forward https://qiita.com/Ayaka14/items/449e2236af4b8c2beb81 So was Sie können dies auch mit iptables tun Pakete, die an einem bestimmten Port ankommen, können an einen Port mit einer bestimmten IP-Adresse weitergeleitet werden. Kann als Proxy für L2 verwendet werden. Es kann auch zum Verbinden von Netzwerksegmenten verwendet werden. VXLAN kann durch Verbinden von Netzwerksegmenten erstellt werden.

VXLAN https://tech.uzabase.com/entry/2017/08/23/175813 Diese Seite ist detailliert.

Redundanz

Da wir einen einzelnen Mikrodienst auf mehreren Hosts platzieren möchten, hauptsächlich aufgrund der Fehlertoleranz, stellen wir einen Mikrodienst auf mehreren Netzwerksegmenten bereit.

Impressionen von VXLAN

Immerhin wollte ich das Routing einstellen. Es fühlt sich so an, als würde ich verschiedene spezielle Namen wie Port Forward für die Einstellung bestimmter Routing-Elemente vergeben.

VRRP Stellen Sie beim Skalieren einer Anwendung einen Load Balancer vor und lassen Sie ihn später sortieren. Wenn es jedoch nur einen Straßenausgleicher gibt, ist dies ein einziges Hindernis. Um den Load Balancer redundant, Keepalived usw. zu machen, wird VRRP implementiert. Damit erhielten mehrere Hosts dieselbe virtuelle IP- und virtuelle MAC-Adresse (abgeleitet von der virtuellen IP), und wenn der Host mit hoher Priorität 3 Sekunden lang keine Kontaktaufnahme durchführte, wurde das Warten mit der nächsthöheren Priorität durchgeführt. Der Host wird Inhaber dieser IP und MAC und bearbeitet die Anforderung. Weitere Informationen zur Funktionsweise des VRRP-Protokolls finden Sie in diesem Artikel oder googeln Sie es entsprechend.

Hinweise zur MySQL Master Slave-Konfiguration

Bei der Master-Slave-Konfiguration ist HAProxy der Haupt-Proxy für den Lastausgleich zu Master oder Slave, indem der Inhalt der Abfrage betrachtet wird. Wenn Sie beim Client-Lastenausgleich eine Reihe von Abfragen einschließlich Aktualisierung ausgeben möchten, geben Sie diese an den Master aus. Wenn es sich nur um Lesen handelt, übergeben Sie die Abfrage an den Slave. In diesem Fall gibt es verschiedene Methoden zum Lastausgleich von Slave, aber die redundante Konfiguration von Loadbalancer mit NGINXs TCP Loadbalancer + Keepalive scheint gut zu sein. Es kann getan werden und es scheint einfach zu sein.

Verweise

Recommended Posts

Für mich: Infrastruktur- und Netzwerknotizen
Memo für mich Python CSV Graph
Netzwerk-Memo (hauptsächlich Linux)
Erstellen Sie mit AWS CDK Python ganz einfach Netzwerkinfrastruktur und EC2
Bei mir cp und Subprocess
Hinweise zur Funktion und Rückverfolgung
Anmerkungen zu * args und ** kargs
Python Tkinter Memo (für mich)
Memorandum für mich lernen w
Anmerkungen zu Pyenv und Atom
Fallstricke und Problemumgehungen für pandas.DataFrame.to_sql
py, shebang, venv und ich
Hinweise zum HHKB-Programmierwettbewerb 2020
Mit mir, NER und Flair
Tipps und Vorsichtsmaßnahmen bei der Datenanalyse