Konfigurácia sieťových rozhraní v systéme CentOS 8/7

V tomto článku sa zameriame na spôsoby konfigurácie siete v systémoch Linux. CentOS 7/8, ukazujú, ako nakonfigurovať sieťové rozhrania prostredníctvom konfiguračných súborov, základných pomocných programov pre sieťovú konfiguráciu a oveľa viac. Toto je relevantná téma, pretože počiatočná konfigurácia ľubovoľného servera začína s nastavením siete na ňom.

V článku si ukážeme funkcie konfigurácie siete v CentOS 7 pomocou štandardnej sieťovej služby. Pozrime sa, ako použiť na konfiguráciu siete NetworkManager (NM), ktorá je štandardne ponúkaná v CentOS 8.

obsah:

  • Pomenovanie sieťového rozhrania v systéme CentOS
  • Počiatočné nastavenie siete pri inštalácii CentOS
  • Manuálna konfigurácia konfiguračného súboru sieťového rozhrania v systéme CentOS
  • Ako zakázať IPv6 v systéme CentOS?
  • Ako určiť server DNS pre sieťové rozhranie v systéme CentOS?
  • Ako nakonfigurovať viac IP adries na jednom sieťovom rozhraní CentOS?
  • Konfigurácia VLAN (802.1Q) v systéme CentOS
  • Konfigurácia viacerých sieťových rozhraní v systéme CentOS
  • Užitočné sieťové príkazy CentOS
  • Nástroje na správu siete v systéme CentOS
  • Správa siete pomocou NetworkManager v systéme CentOS 8

Pomenovanie sieťového rozhrania v systéme CentOS

Klasické pomenovávanie názvov v sieťovom rozhraní Linux eth0, eth1 a tak ďalej. Tieto názvy však nie sú pevne spojené s rozhraniami a po reštarte, ak existuje niekoľko sieťových rozhraní, sa tieto názvy môžu zmeniť. To môže spôsobiť určité problémy pri konfigurácii napríklad brány firewall prostredníctvom brány firewall alebo iptables. V tejto súvislosti sa počnúc RedHat 7 a CentOS 7 rozhodlo o pridelení názvov sieťových rozhraní na základe hierarchie rôznych schém pomenovávania. V predvolenom nastavení bude systémd aplikovať pomenovacie schémy jeden po druhom, so zameraním na prvé dostupné a použiteľné. Názvy sú priradené v automatickom režime, zostanú nezmenené, aj keď je hardvér pridaný alebo zmenený. Na druhej strane sú napríklad takéto názvy rozhraní menej čitateľné, enp5s0 alebo ens3, ako tradičné eth0 a eth1.

K predvolenému názvu rozhrania systému Linux sa môžete vrátiť pomocou nasledujúcich krokov.

Upravte súbor / etc / default / grub:

# nano / etc / default / grub

V rade GRUB_CMDLINE_LINUX je potrebné pridať:

net.ifnames = 0 biosdevname = 0

Príklad celého riadku:

GRUB_CMDLINE_LINUX = "consoleblank = 0 fsck.repair = yes crashkernel = auto nompath selinux = 0 rhgb tichá sieť.ifnames = 0 biosdevname = 0"

Aktualizujte konfiguráciu bašta:

# grub2-mkconfig -o /boot/grub2/grub.cfg

Premenujte konfiguračný súbor sieťového rozhrania:

# mv / etc / sysconfig / network-scripts / ifcfg-ens3 / etc / sysconfig / network-scripts / ifcfg-eth0

A nahradiť hodnotu ZARIADENIE:

Uložte súbor, reštartujte server a skontrolujte, či je všetko v poriadku:

# ip a

Rozhranie sa teraz nazýva eth0.

Počiatočné nastavenie siete pri inštalácii CentOS

Pri inštalácii CentOS Linux môžete najprv nakonfigurovať sieťové rozhranie v grafickom režime v položke ponuky „Sieť a názov hostiteľa“. V tomto odseku zadáte názov servera, pridajte požadované IP adresa a brána, DNS a oveľa viac. Podrobnejšie nastavenia v tomto kroku nájdete v článku v odkaze vyššie.

Manuálna konfigurácia konfiguračného súboru sieťového rozhrania v systéme CentOS

Uvádzame dostupné sieťové rozhrania v systéme:

# ip a

Konfiguračné súbory siete servera sú uložené v adresári / etc / sysconfig / network-scripts. Tieto súbory vytvára démon NetworkManager pre každé sieťové rozhranie. V našom prípade sa volá konfiguračný súbor ifcfg-eth0 (môže sa líšiť v závislosti od schémy pomenovávania sieťového rozhrania).

Zvážte hlavné parametre:

  • DEVICE - názov sieťového adaptéra, ktorý je rovnaký ako názov v systéme, máme eht0
  • BOOTPROTO - metóda pre priradenie IP adresy (statická - statická hodnota, zadajte ručne. Dhcp - získajte adresu automaticky)
  • IPADDR - IP adresa
  • NETMASK - maska ​​podsiete
  • GATEWAY - predvolená brána
  • DNS1 - primárny server DNS
  • DNS2 - alternatívny server DNS
  • ONBOOT - spôsob, ako spustiť sieťové rozhranie (áno - automaticky, nie - ručne)
  • UUID je jedinečný identifikátor sieťového rozhrania. Môžete ho vygenerovať sami pomocou príkazu uuidgen.
  • IPV4_FAILURE_FATAL - vypnite sieťové rozhranie s adresou IP v4, ak má nesprávnu konfiguráciu (áno - vypnúť, nie - vypnúť)
  • IPV6_FAILURE_FATAL - vypnite sieťové rozhranie s adresou IP v6, ak má nesprávnu konfiguráciu (áno - vypnúť, nie - vypnúť)
  • IPV6_AUTOCONF - Povolí alebo zakáže automatickú konfiguráciu IPv6 pomocou protokolu
  • IPV6_INIT - umožňuje použitie adresovania IPv6 (áno - je možné použiť adresovanie, nie - nepoužiť)
  • PEERROUTES - nastavuje predvolenú prioritu konfigurácie brány pri použití DHCP
  • IPV6_PEERROUTES - nastavuje predvolenú prioritu konfigurácie brány pri použití DHCP pre IPv6

Na základe týchto informácií nakonfigurujte sieťové rozhranie.

Nakonfigurujte statickú adresu IP na serveri CentOS

Otvorte súbor na úpravu:

# mcedit / etc / sysconfig / network-scripts / ifcfg-eth0

V tomto príklade som zadal statickú IP adresu, masku podsiete, bránu a niekoľko serverov DNS. Zapnúť rozhranie automatického štartu:

ONBOOT = „áno“

Po všetkých úpravách musíte službu reštartovať sieť. Ak je všetko v poriadku, dostanete takýto záznam:

[root @ server network-scripts] # ​​reštart siete siete

Reštartovanie siete (prostredníctvom systemctl): [OK]

Môžete tiež jednoducho reštartovať všetky profily pripojenia:

Obnovenie pripojenia # nmcli

Získanie dynamickej adresy IP pre rozhranie prostredníctvom DHCP

Ak má váš server získať adresu IP zo servera DHCP North, otvorte konfiguračný súbor rozhrania a zmeňte nastavenia:

To znamená, že sme odstránili všetky nastavenia týkajúce sa adries IP a masky a tiež sme zmenili spôsob, akým bola adresa IP priradená dhcp (BOOTPROTO = ”dhcp”). Po všetkých zmenách nezabudnite reštartovať sieť.

Ako zakázať IPv6 v systéme CentOS?

V čase písania článku o aktívnom používaní ipv6 v Rusku nie, a často, ak existuje takáto príležitosť, správcovia uprednostňujú protokol ipv4. Ak tento protokol stále nepoužívate, musíte ho na serveri zakázať. Ak ste si istí, že žiadna zo služieb nie je nakonfigurovaná na prácu s ipv6, môžete okamžite pokračovať v konfigurácii sieťového rozhrania, ak nie, potom začnite kontrolou. Musíme skontrolovať, ktoré služby používajú ipv6 a vypnúť tento protokol v konfigurácii služby. Spustite príkaz:

# netstat -tulnp

Mám testovací server ipv6 Používa sa iba pre sshd a cronyd. Toto je možné určiť pomocou „:::“.

Aby ste predišli problémom po deaktivácii ipv6 v konfigurácii siete, vypnite tento protokol v službách, v ktorých sa používajú na vašom serveri. Napríklad pre sshd musíte otvoriť konfiguračný súbor:

# mcedit / etc / ssh / sshd_config

A odkomentujte riadky:

#AddressRodina ľubovoľná #ListenAddress 0.0.0.0

Potom reštartujte službu:

Ako vidíte, pre protokol sshd ipv6 teraz nedostupné. Rovnaké nastavenie vykonajte so všetkými službami..

Prejdime k deaktivácii protokolu ipv6 v sieťových nastaveniach. Otvorte súbor /etc/sysctl.conf:

# nano /etc/sysctl.conf A tam pridajte nasledujúce riadky:

net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

Uložte súbor a prihláste sa prostredníctvom:

[root @ server ~] # sysctl -p

net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

Poďme k súboru / etc / sysconfig / network. Pridajte k nemu nasledujúcu konfiguráciu:

NETWORKING_IPV6 = nie IPV6INIT = nie

Z konfiguračného súboru sieťového rozhrania / etc / sysconfig / network-scripts / ifcfg-eth0 odstrániť riadok:

IPV6INIT = "áno"

Nakoniec pridajte zákaz práce ipv6 v grub:

# nano / etc / default / grub

Na koniec riadku GRUB_CMDLINE_LINUX pridajte:

ipv6.disable = 1

Po všetkých nastaveniach uložte súbor a aktualizujte grub:

# grub2-mkconfig -o /boot/grub2/grub.cfg

Reštartujte server a skontrolujte konfiguráciu siete:

[root @ server ~] # ifconfig

eth0: flags = 4163 mtu 1500 inet 185. *. *. * Netmask 255.255.255.0 broadcast 185. *. *. 255 ether 52: 54: 00: d3: 1c: 3e txqueuelen 1000 (Ethernet) RX pakety 10068 bytov 613092 ( 598,7 KiB) Chyby RX 0 vynechané 0 prekročení 0 rámec 0 TX pakety 32 bajtov 5399 (5,2 KiB) Chyby TX 0 vynechané 0 prekročenia 0 nosič 0 kolízie 0 lo: vlajky = 73 mtu 65536 inet 127.0.0.1 sieťová maska ​​255.0.0.0 slučka txqueuelen 1000 (Local Loopback) RX pakety 0 bajtov 0 (0,0 B) RX chyby 0 vynechané 0 prekročení 0 rámec 0 pakety TX 0 bajty 0 (0,0 B) TX chyby 0 vynechané 0 prekročenia 0 nosič 0 kolízie 0

protokol ipv6 zakázané na serveri.

Ako určiť server DNS pre sieťové rozhranie v systéme CentOS?

Server môžete nakonfigurovať pre svoj server pomocou súboru /etc/resolv.conf alebo ich špecifikujte v nastaveniach sieťového rozhrania. Pri konfigurácii statickej konfigurácie sieťového rozhrania sme už zadali server DNS prostredníctvom týchto parametrov:

DNS1 = DNS2 = DNS3 =

Nainštalujte potrebné servery DNS a reštartujte sieťovú službu.

Do súboru /etc/resolv.conf, Servery DNS sa zaregistrujú automaticky pri reštarte servera, pričom ich vyberú zo sieťového konfiguračného súboru. Ak ste pri nastavovaní siete neurčili server DNS, zaregistrujte ich ručne do súboru /etc/resolv.conf:

nameserver 77.88.8.8 nameserver 8.8.8.8 nameserver 8.8.4.4

Ako nakonfigurovať viac IP adries na jednom sieťovom rozhraní CentOS?

Ak potrebujete na rovnakom sieťovom rozhraní použiť niekoľko adries IP, môžete ich nakonfigurovať pomocou aliasu rozhrania alebo pridaním ďalšej adresy IP do hlavného konfiguračného súboru..

# nano / etc / sysconfig / network-scripts / ifcfg-eth0

A zmeňte to takto:

# Generované pars-kickstart UUID = "b8bccd4c-fb1b-4d36-9d45-044c7c0194eb" IPADDR1 = "*. *. *. *" IPADDR2 = "*. *. *. *" GATEWAY = "*. *. *. * "NETMASK =" 255.255.255.0 "BOOTPROTO =" statický "DEVICE =" eth0 "ONBOOT =" yes "DNS1 = 77.88.8.8 DNS2 = 8.8.8.8 DNS3 = 8.8.4.4 

kde:

IPADDR1 - Prvá adresa IP

IPADDR2 - druhá adresa IP

BRÁNA - hlavná brána

Alebo vytvoriť prezývka do hlavného konfiguračného súboru:

# nano / etc / sysconfig / network-scripts / ifcfg-eth0: 1

A pridajte niekoľko riadkov bez hlavnej brány:

Po všetkých nastaveniach musíte reštartovať sieť:

[root @ server network-scripts] # ​​reštart siete siete

Reštartovanie siete (prostredníctvom systemctl): [OK]
V systéme Windows môžete na jednom rozhraní nakonfigurovať aj viac adries IP (aliasov).

Konfigurácia VLAN (802.1Q) v systéme CentOS

V článku CentOS sme hovorili o nastavení viacerých sietí VLAN pre jedno sieťové rozhranie v CentOS: Konfigurácia siete VLAN na sieťovom rozhraní v systéme CentOS.

Konfigurácia viacerých sieťových rozhraní v systéme CentOS

Ak máte na serveri niekoľko sieťových rozhraní, môžete pre ne určiť rôzne adresy IP. Poďme na to, ako na to. Ak máte na serveri viac ako jedno sieťové rozhranie,ip a„Mali by sa zobraziť tieto informácie:

[root @ server ~] # ip a

1: lo: mtu 65536 qdisc noqueue state UNKNOWN predvolená skupina qlen 1000 link / loopback 00: 00: 00: 00: 00: 00 brd 00: 00: 00: 00: 00: 00 inet 127.0.0.1/8 rozsah hostiteľ lo valid_lft navždy preferovaný_vľavo navždy 2: et0: mtu 1500 qdisc pfifo_fast state UP skupina predvolená qlen 1000 link / ether 52: 54: 00: d3: 1c: 3e brd ff: ff: ff: ff: ff: ff: inet 185. *. *. * / 16 brd 185. *. *. *. 255 rozsah globálny eth0 valid_lft navždy preferovaný_lft navždy 3: eth1: mtu 1500 qdisc noop state DOWN skupina default qlen 1000 link / ether 52: 54: 00: 5f: f3: b8 brd ff: ff : ff: ff: ff: f

Ak chcete nakonfigurovať druhé rozhranie, musíte preň vytvoriť súbor:

# nano / etc / sysconfig / network-scripts / ifcfg-eth1

A pridajte nasledujúcu konfiguráciu:

IPADDR = "*. *. *. *" GATEWAY = "*. *. *. *" NETMASK = "255.255.255.0" BOOTPROTO = "statický" DEVICE = "eth1" ONBOOT = "yes"

Potom musíte na server nainštalovať predvolenú bránu. Skontrolujeme, ktorá brána je aktuálne nainštalovaná, a ak je to potrebné, zmeníme ju:

[root @ server ~] # netstat -nr

Tabuľka smerovania jadra IP Cieľová brána Genmask Vlajky MSS Okno irtt Iface 0.0.0.0 185. *. * 0.0.0.0 UG 0 0 0 eth1 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 eth1 185. *. 0.0 0.0.0.0 255.255.0.0 U 0 0 eth0 185. *. * 0.0.0.0 255.255.255.0 U 0 0 eth1

Ako hlavnú bránu máme rozhranie eth1. Chcem používať eth0, preto ho meníme:

# route add default gw *. *. *. * - vymeňte bránu za bránu uvedenú v sieťovom rozhraní eth0

# route delete default gw *. *. *. * - vymazať bránu rozhrania eth1

Ak chcete, aby toto nastavenie zostalo aj po reštarte servera, pridajte tieto príkazy rc.local (pozri článok o službách spúšťania v CentOS).

Užitočné sieťové príkazy CentOS

  • ifdown eth1 - vypnúť zadané sieťové rozhranie.
  • ifup eth1 - zvýšiť zadané sieťové rozhranie.
  • ifconfig - skontrolujte informácie o všetkých rozhraniach.
  • ifconfig -a | éter grep gawk 'print $ 2' - príkaz na výstup MAC adries rozhraní
  • ip a | éter grep gawk 'print $ 2' - to isté, iba pomocou nástroja ip
  • reštart siete služieb alebo reštartovať sieť - reštartujte sieťovú službu pomocou systemctl
  • systemctl restart NetworkManager.service - reštartovať NM
  • ip cesta alebo ip route show - zobraziť smerovaciu tabuľku
  • hostiteľ ping - ping zadaného hostiteľa
  • whois doména - získajte whois informácie pre doménu
  • vykopať doménu - získať informácie o doméne DNS

Nástroje na správu siete v systéme CentOS

Ak server nejaký čas pracoval alebo ste ho vôbec nenastavili, prvým krokom je zistiť, ktoré rozhrania sú na serveri. Z dôvodu pohodlia nainštalujte potrebné nástroje zo základného úložiska:

# yum install net-tools -y

Po inštalácii môžete použiť pomôcku ifconfig:

[root @ server ~] # ifconfig

eth0: flags = 4163 mtu 1500 inet 185. *. *. * Netmask 255.255.255.0 broadcast 185. *. *. 255 inet6 fe80 :: 5054: ff: fed3: 1c3e prefixlen 64 rozsah 0x20 éter 52: 54: 00: d3 : 1c: 3e txqueuelen 1000 (Ethernet) RX pakety 2189424 bajtov 144208326 (137,5 MiB) Chyby RX 0 vynechané 0 prekročení 0 rámec 0 pakety TX 2350 bytov 260486 (254,3 KiB) TX chyby 0 vynechané 0 prekročenia 0 nosič 0 kolízie 0

Ako vidíte, názov nášho sieťového rozhrania eth0.

Bez inštalácie balíka net-tools, Svoje rozhrania môžete otestovať pomocou nasledujúceho príkazu:

# ip a

Výsledok bude takmer rovnaký:

Správa siete pomocou NetworkManager v systéme CentOS 8

V systéme CentOS 8 sa odporúča používať iba sieťové nastavenia NetworkManager. Táto služba na správu sieťového pripojenia monitoruje nastavenia a uplatňuje zmeny sieťových adaptérov.

Pre kontrolu stavu NM, použite príkaz:

# systemctl status NetworkManager.service

Spoločnosť CentOS navrhuje na konfiguráciu siete použiť príkazovú konzolu nmcli alebo grafický nástroj nmtui.

Ak chcete vstúpiť do režimu sieťových nastavení, zadajte príkaz:

# nmtui

Keď vyberiete prvú položku, zobrazí sa okno s výberom sieťového rozhrania na úpravy:

Vyberte rozhranie, ktoré potrebujeme, a upravte:

Môžeme upraviť meno, IP-adresu, bránu, DNS-servery. V interaktívnej ponuke NM tiež môžeme zmeniť spôsob priradenia IP adresy DHCP:

Nahradiť „príručka"On"automatický"

Potom uložte nastavenia. Použitím nmtui v grafickom režime môžete vykonať akékoľvek nastavenia, ktoré vykonáte manuálne, prostredníctvom konfiguračných súborov. Ak uprednostňujete konfiguráciu rozhraní pomocou príkazového riadku, môžete použiť nmcli. Napríklad nasledujúce príkazy zmenia IP adresu, bránu a server DNS pre rozhranie eth1.

# nmcli con mod et1 ipv4.adreses 192.168.10.14/24
# nmcli con mod et1 ipv4.gateway 192.168.10.1
# nmcli con mod eth1 ipv4.dns "8.8.8.8"

Ak chcete použiť zmeny, znova načítajte rozhranie:

# nmcli skončí eth1

Ak je pre vás pohodlnejšie pracovať s konfiguračnými súbormi, nainštalujte si cez yum samostatný balík network-scripts (CentOS 8 ju predvolene nemá):

# yum nainštalujte sieťové skripty -y

Inovované: initscripts-10.00.1-1.el8_0.1.x86_64 Nainštalované: network-scripts-10.00.1-1.el8_0.1.x86_64 network-scripts-team-1.27-10.el8.x86_64 Complete!

Po inštalácii tohto balíka môžete upraviť sieťové nastavenia, ako sme už opísali, prostredníctvom konfiguračných súborov: