GNU/Linux >> Znalost Linux >  >> Cent OS

Centos – oddělený síťový provoz na dvou síťových rozhraních?

Mohl byste propůjčit své odborné znalosti, abyste pochopili, jak postupovat
při konfiguraci oddělení síťového provozu na dvou síťových rozhraních?

Jak jsem doposud pochopil, statické trasy se používají pro síťový provoz, který
není navržen tak, aby používal výchozí bránu. Výchozí brána se používá pro
veškerý provoz, který není určen pro místní síť a pro který nebyla ve směrovací tabulce zadána žádná
preferovaná cesta.

Scénář je následující.

  • Každý počítač v síti má dvě síťové karty.
  • Produkční rozhraní každého z nich je eth0 (GW =10.10.10.1).
  • Rozhraní pro správu každého z nich je eth1 (GW =192 168 100,1).
  • Produkce a správa by měly být zcela odděleny.

Níže jsem zveřejnil, co jsem zkoušel s Debian Wheezy.
A můj problém je, že ačkoliv mám hostitele nastavené tak,
komunikují na obou rozhraních, jednotlivé hostitele zdá se, že „slyší“
provoz na nesprávném rozhraní. Například:

Host 140

eth0 Link encap:Ethernet HWaddr 08:00:27:d1:b6:8f inet addr:10.10.10.140 Bcast:10.10.10.255 Mask:255.255.255.0 inet6 adr:fe0f:827ffa :b68f/64 Rozsah:Link UP VYSÍLÁNÍ RUNNING MULTICAST MTU:1500 Metrika:1 RX pakety:1341 chyby:0 zahozené:0 přetečení:0 snímek:0 TX pakety:2530 chyby:0 zahozeny:0 přetečení:0 přenašeč:0 kolize :0 txqueuelen:1000 RX bajtů:641481 (626,4 KiB) TX bajtů:241124 (235,4 KiB)eth1 Link encap:Ethernet HWaddr 08:00:27:ad:14:b6 inet adr:1910186:19102.16. :255.255.255.0 inet6 addr:fe80::a00:27ff:fead:14b6/64 Rozsah:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metrika:1 RX pakety:7220 chyby:0 zahozené:0 přetečení TX paketů snímek:0 :5257 chyby:0 zahozené:0 přetečení:0 dopravce:0 kolize:0 txqueuelen:1000 RX bajtů:602485 (588,3 KiB) TX bajtů:1022906 (998,9 KiB) 

Z hostitele 140 provedu tento příkaz:tcpdump -i eth0 . V samostatné
relaci na hostiteli 140 provedu ping 192.168.100.50 .

19:17:29.301565 IP 192.168.100.140> 192.168.100.50:ICMP požadavek na echo, id 1400, seq 10, délka 6419:17:30.3019261 IP11215061>1819 IP11215061.0.081610.0.0.0 1400, SEQ 11, Délka 6419:17:31.301570 IP 192.168.100.140> 192.168.100.50:ICMP Echo Request, ID 1400, SEQ 12, délka 6419:17:32.301580 IP 192.168.100.140> 192.168.100,50:ID ID ID. 1400, seq 13, délka 64

Proč vidím výše uvedený výstup na eth0 ? Myslím, že bych měl vidět provoz pouze pro 10.10.10.140.
Vidím to také na eth1 , podle očekávání:

19:18:47.805408 IP 192.168.100.50> 192.168.100.140:ICMP echo request, id 1605, seq 247, length 64 

Pokud pingnu z hostitele 50 (stejné ifconfig výsledky – jen jiná poslední čtveřice),
pak eth0 je tichý a na eth1 vidím ozvěnu ICMP podle očekávání.

Chtěl bych pochopit, jak nakonfigurovat každé rozhraní tak, aby zpracovávalo pouze
provoz, za který je odpovědné ve dvou hlavních variantách Linuxu.
Myslím, že už jsem skoro tam, ale chybí mi něco, co prostě neumím. Zdá se, že jsem nenašel.

  • Debian Wheezy (7.x) nebo Debian Jessie (8.x)
  • Enterprise Linux (6.x) (RedHat/CentOS/Scientific/Oracle).

Vím, že řešení pro Debian by mělo být dobré pro Wheezyho i Jessie,
a že řešení pro EL by mělo být stejné pro všechny verze EL 6.x.
Rád bych se vyvaroval používání RC skript pro spouštění příkazů, místo toho volí
použití konfiguračních souborů.

V Debianu relevantní konfigurační soubory, o kterých vím, jsou:

  • /etc/network/interfaces

V EL 6.x jsou příslušné konfigurační soubory, o kterých vím,:

  • /etc/sysconfig/network
  • /etc/sysconfig/network-scripts/ifcfg-eth0
  • /etc/sysconfig/network-scripts/ifcfg-eth1
  • /etc/sysconfig/network-scripts/route-eth0
  • /etc/sysconfig/network-scripts/route-eth1
  • /etc/sysconfig/network-scripts/rule-eth0
  • /etc/sysconfig/network-scripts/rule-eth1

Můj Debian 8 „Jessie“ /etc/network/interfaces soubor:

zdroj /etc/network/interfaces.d/*# Síťové rozhraní zpětné smyčkyauto loiface lo inet loopback# Produkční rozhraníauto eth0allow-hotplug eth0iface eth0 inet statická adresa 10.10.10.140 síťová maska ​​255.255.210.1 brána# 210.0.0 interfaceauto eth1allow-hotplug eth1iface eth1 inet statická adresa 192.168.100.140 maska ​​sítě 255.255.255.0 

Myslím, že netstat -anr může ilustrovat problém:

Tabulka směrování IP jádra Cílová brána Genmask Příznaky MSS Window irtt Iface0.0.0.0 10.10.10.1 0.0.0.0 UG 0 0 0 eth010.10.10.0 0.0.0.0 255.205.0 255.205.0 0 0.0.0.0 255.255.255.0 U 0 0 0 eth0192.168.100.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 

Přijatá odpověď:

Rád bych se o tomto tématu dozvěděl více, abych upřesnil konfiguraci tak, aby byla co nejlepší, ale tady je to, co zatím mám. I bez povolení filtrování ARP na všech síťových rozhraních (net.ipv4.conf.all.arp_filter =0 ), jak uvedl @spuk,
provoz se zdá být v této konfiguraci zcela oddělen.

Související:Sed odstranit znaky z nového řádku?

Soubor /etc/iproute2/rt_tables , je stejný alespoň v EL 6.xa DEB 7/8. Toto je soubor, který vytváří pojmenovanou směrovací tabulku pro statické cesty.

## vyhrazené hodnoty#255 local254 main253 default0 unspec## local#252 mgmt 

Výše uvedené číslo jmenované statické cesty 252 je v podstatě libovolné; nebo každá statická trasa dostane své vlastní jedinečné číslo mezi 1 a 252.

Soubor /etc/network/interfaces v DEB 7/8, alespoň:

source /etc/network/interfaces.d/*# Síťové rozhraní zpětné smyčky auto lo iface lo inet loopback# Rozhraní produkční sítě# Direktiva 'gateway' je výchozí cesta.# Byly konfigurovány eth0 přes DHCP, výchozí cesta by byla také zde.auto eth0allow-hotplug eth0iface eth0 inet statická adresa 10.10.10.140 maska ​​sítě 255.255.255.0 brána 10.10.10.1# Rozhraní sítě pro správu# Direktivu 'brána' nelze znovu použít, protože ji nelze znovu použít a pouze jedna, výchozí trasa. Místo toho direktivy 'post-up'# používají statickou trasu `mgmt`.auto eth1allow-hotplug eth1iface eth1 inet statická adresa 192.168.100.140 netmask 255.255.255.0 post-up ip route add 192.1011rc add 192.1011rc 100.140 table mgmt post-up ip route add default přes 192.168.100.1 dev eth1 table mgmt post-up ip rule add from 192.168.100.140/32 table mgmt post-up ip rule add to 192.168.100.1 table mgmt post-up ip rule add to 192.168.100.1 40. 

Výsledek IP route show v Debianu:

výchozí přes 10.10.10.1 dev eth010.10.10.0/24 dev eth0 proto kernel scope link src 10.10.10.140192.168.100.0/24 dev eth1 proto kernel scope link src.018.016. 

EL 6.x /etc/sysconfig/network soubor:

NETWORKING=yesHOSTNAME=localhost.localdomainGATEWAY=10.10.10.1 

Výše je výchozí trasa GATEWAY. Pokud by byl BOOTPROTOCOL níže nastaven na DHCP, výchozí trasa by byla získána z DHCP.

EL 6.x /etc/sysconfig/network-scripts/ifcfg-eth0 soubor bez „HWADDR“ a „UUID“:

DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED=noBOOTPROTOCOL=noneIPADDR=10.10.10.140NETMASK=255.255.255.0NETWORK=10.10.10.0BROADCAST=10.255.1 

EL 6.x /etc/sysconfig/network-scripts/ifcfg-eth1 soubor bez „HWADDR“ a „UUID“:

DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED=noBOOTPROTOCOL=noneIPADDR=192.168.100.140NETMASK=255.255.255.0NETWORK=192.168.100.0BROADCAST.2 

EL 6.x /etc/sysconfig/network-scripts/route-eth1 soubor:

192.168.100.0/24 dev eth1 table mgmtdefault přes 192.168.100.1 dev eth1 table mgmt 

EL 6.x /etc/sysconfig/network-scripts/rule-eth1 soubor:

od 192.168.100.0/24 vyhledávací mgmt 

Výsledek IP route show na EL 6.x:

192.168.100.0/24 dev eth1 proto odkaz rozsahu jádra src 192.168.100.16010.10.10.0/24 dev eth0 proto odkaz rozsahu jádra src 10.10.10.160default 

Aktualizace pro RHEL8

Tato metoda popsaná výše funguje s RHEL 6 a RHEL 7 i s jejich deriváty, ale pro RHEL 8 a odvozeniny je třeba nejprve nainstalovat network-scripts použít metodu popsanou výše.

dnf install network-scripts 

Instalace vytvoří varování, že síťové skripty bude odstraněn v jednom z příštích hlavních vydání RHEL a NetworkManager poskytuje ifup /ifdown také skripty.

Aktualizace pro Ubuntu 20.04 LTS

Vytvoření pojmenované směrovací tabulky je v pořádku, ale není vyžadováno s netplan , který název stejně nebude používat. Nicméně číslo pojmenované směrovací tabulky z rt_tables soubor lze použít pro netplan . Odpovídající síťové karty jsou enps03 (eth0 ) a enp0s8 (eth1 ).

síť:verze:2 ethernety:enp0s3:adresy:- 10.10.10.140/24 dhcp4:false dhcp6:falešná brána4:10.10.10.1 jmenné servery:adresy:- 1.2.3.4 - 1.2.5 hledání -3. -search-domain-name.com enp0s8:dhcp4:false dhcp6:false address:- 192.168.100.140/24 routes:- to:192.168.100.0/24 via:192.168.100.0/24 through:192.168.100.0.1 from routing-policy:6 Tabulka .100.0/24:252 

Výsledkem jsou následující cesty z ip r s .

výchozí přes 10.10.10.1 dev enp0s3 proto static10.10.10.0/24 dev enp0s3 proto kernel scope link src 10.10.10.140192.168.100.0/24 dev enp0s8 s2code64 link scope 

Cent OS
  1. Jak vytvořit síťový most na CentOS 7 / RHEL 7

  2. Jak restartovat síťovou službu na CentOS 8 nebo RHEL 8

  3. Jak nainstalovat VnStat Network Monitoring na CentOS 7

  1. Jak deaktivovat NetworkManager na CentOS / RHEL 7

  2. CentOS / RHEL 7:Jak povolit staré názvy síťových rozhraní ve stylu ethX

  3. Jak nakonfigurovat Network Teaming v CentOS/RHEL 7

  1. Časový limit zjišťování „iscsiadm“ se dvěma nebo více síťovými rozhraními v CentOS/RHEL

  2. Jak odebrat síťovou tiskárnu v CentOS/RHEL

  3. CentOS 7 Restart Network Command