Cum configurez rețeaua, astfel încât atât gazda, cât și VM-urile să se poată conecta la internet?
Am configurat un server pentru a găzdui mai multe mașini virtuale folosind KVM. Este destinat să deservească o bibliotecă de cărți descărcabile pentru nevăzători (mai multe detalii mai jos).
Starea actuală este rezultatul încercării de a urma o serie de tutoriale despre crearea de rețele pentru mașini virtuale. Scopul este de a avea acces la internet atât de la gazdă, cât și de la VM.
Atât gazda, cât și oaspeții rulează Debian 10. Placa de rețea este configurată ca punte de rețea br0 cu o adresă statică („interfețe” vezi mai jos).
În prezent, VM-urile sunt pornite manual folosind virsh. Când nu rulează mașini virtuale, gazda are acces la internet (de exemplu ping debian.org, get update, wget ...).
Odată ce un VM este pornit, acesta are acces la internet folosind br0. Fiecare VM are o adresă statică. Gazda pierde apoi accesul la internet. Ping-ul este posibil pentru alte mașini din rețeaua locală, precum și pentru router, dar nu dincolo (fie ping un nume de domeniu sau o adresă IP).
Atât gazda, cât și VM-urile pot fi accesate folosind ssh de la alte mașini locale.
Odată ce VM-urile sunt setate la pornire automată, nu mai este posibilă actualizarea fără a opri manual VM-urile, de asemenea, gazda nu se conectează la un server de timp. În plus, ip arată pachetele abandonate.
Toate acestea sunt cel mai probabil rezultatul înțelegerii mele foarte limitate despre rețele și poduri în special. Sunt cel mai recunoscător pentru orice ajutor!
Iată câteva informații suplimentare.
Scop
Un VM ar trebui să servească utilizatorii din afara rețelei locale, folosind un server web NginX. Se ocupă de descărcarea cărților extrase de utilizatori care sunt stocate pe o unitate locală.
Al doilea VM oferă un server de baze de date PostgreSQL, care poate fi accesat numai de la stațiile de lucru locale, unde sunt administrați utilizatorii bibliotecii și împrumuturile.
Gazda ar trebui să fie accesibilă prin ssh din rețeaua locală. Accesul la internet este necesar pentru conectarea la un server de timp și pentru a putea menține software-ul la zi.
PC
Placa de baza: MSI MPG B550 GAMING PLUS
CPU: AMD Ryzen⢠7 3700X
RAM: Kit Corsair DIMM 32 GB DDR4-3200
HD: Samsung 980 PRO 1 TB, SSD
Placa grafica: MSI GeForce GT 710 1GD3H LP
OS
uname -r
4.19.0-17-amd64
lsb_release -a
Nu sunt disponibile module LSB.
ID distribuitor: Debian
Descriere: Debian GNU/Linux 10 (buster)
Lansare: 10
Nume de cod: buster
Reţea
Până când este mutat în bibliotecă, serverul este la biroul meu de acasă conectat la un router AVM Fritz!Box 7490.
ls /sys/class/net/
br0 enp42s0 lo
cat /etc/network/interfaces
# Acest fișier descrie interfețele de rețea disponibile pe sistemul dumneavoastră
# și cum să le activați. Pentru mai multe informații, consultați interfețe(5).
sursa /etc/network/interfaces.d/*
# Interfața de rețea loopback
auto lo
iface lo inet loopback
# Interfața de rețea principală
iface enp42s0 inet manual
# Setările podului br0
auto br0
iface br0 inet static
bridge_ports enp42s0
adresa 192.168.10.50
rețeaua 192.168.10.0
difuzat 192.168.10.255
mască de rețea 255.255.255.0
gateway 192.168.10.1
servere de nume dns 94.247.43.254 194.36.144.87 192.168.10.1
bridge_stp off
bridge_fd 0
bridge_maxwait 0
(Machinele virtuale au adrese 192.168.10.51, 192.168.10.52)
ip -s link arată dev br0
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT grup implicit qlen 1000
link/ether 2c:f0:5d:e4:36:d5 brd ff:ff:ff:ff:ff:ff
RX: octeți pachete erori scăpat depășire mcast
206602 2218 0 1130 0 177
TX: octeți pachete erori eliminate collsns de transportator
99981 593 0 0 0 0
cat /proc/net/dev
Inter-| Primește | Transmite
fata | octeți pachete erori drop fifo frame comprimat multicast| octeți pachete erori drop fifo colls purtător comprimat
br0: 210026 2268 0 1138 0 0 0 177 103273 615 0 0 0 0 0 0
vnet0: 1384510 18903 0 0 0 0 0 0 58389276 40523 0 0 0 0 0 0
lo: 1840 26 0 0 0 0 0 0 1840 26 0 0 0 0 0 0
enp42s0: 58580534 42260 0 38 0 0 0 289 1467123 19358 0 0 0 0 0 0
traseul -n
Kernel-IP-Routentabelle
Ziel Router Genmask Steaguri Metric Ref Utilizare Iface
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 vnet0
0.0.0.0 192.168.10.1 0.0.0.0 UG 0 0 0 br0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 vnet0
192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
ls /sys/class/net/
br0 enp42s0 lo vnet0