Làm cách nào để thiết lập mạng để cả máy chủ và máy ảo đều có thể kết nối với internet?
Tôi đã thiết lập một máy chủ để lưu trữ một số máy ảo bằng KVM. Nó nhằm mục đích phục vụ một thư viện sách có thể tải xuống cho người mù (chi tiết bên dưới).
Trạng thái hiện tại là kết quả của việc cố gắng làm theo một số hướng dẫn về kết nối mạng cho máy ảo. Mục đích là để có quyền truy cập internet từ cả máy chủ và máy ảo.
Cả máy chủ và khách đều chạy Debian 10. Cạc mạng được cấu hình là cầu nối mạng br0 với một địa chỉ tĩnh ('giao diện' xem bên dưới).
Hiện tại, các máy ảo được khởi động thủ công bằng virsh. Khi không có máy ảo nào đang chạy, máy chủ có quyền truy cập internet (ví dụ: ping debian.org, get update, wget...).
Khi VM được khởi động, VM có quyền truy cập internet bằng br0. Mỗi VM có một địa chỉ tĩnh. Máy chủ sau đó mất quyền truy cập internet. Có thể ping đến các máy khác trong mạng cục bộ cũng như bộ định tuyến, nhưng không vượt quá (ping tên miền hoặc địa chỉ IP).
Có thể truy cập cả máy chủ và máy ảo bằng cách sử dụng ssh từ các máy cục bộ khác.
Sau khi máy ảo được đặt thành tự động khởi động, không thể cập nhật mà không tắt máy ảo theo cách thủ công, máy chủ cũng không kết nối với máy chủ thời gian. Hơn nữa, ip hiển thị các gói bị rơi.
Tất cả những điều này rất có thể là kết quả của sự hiểu biết rất hạn chế của tôi về các mạng và các cây cầu nói riêng. Tôi rất biết ơn vì bất kỳ sự giúp đỡ nào!
Dưới đây là một số thông tin thêm.
Mục đích
Một VM được cho là phục vụ người dùng từ bên ngoài mạng cục bộ, sử dụng máy chủ web NginX. Nó xử lý việc tải xuống sách do người dùng kiểm tra được lưu trữ trên ổ đĩa cục bộ.
Máy ảo thứ hai cung cấp một máy chủ cơ sở dữ liệu PostgreSQL, chỉ được truy cập từ các máy trạm cục bộ, nơi người dùng thư viện và các khoản vay được quản lý.
Máy chủ phải được truy cập bằng ssh từ mạng cục bộ. Cần có truy cập Internet để kết nối với máy chủ thời gian và để có thể cập nhật phần mềm.
máy tính
Bo mạch chủ: MSI MPG B550 GAMING PLUS
CPU: AMD Ryzen™ 7 3700X
RAM: Bộ Corsair DIMM 32 GB DDR4-3200
HD: Samsung 980 PRO 1 TB, SSD
Card đồ họa: MSI GeForce GT 710 1GD3H LP
hệ điều hành
uname -r
4.19.0-17-amd64
lsb_release -a
Không có mô-đun LSB nào khả dụng.
ID nhà phân phối: Debian
Mô tả: Debian GNU/Linux 10 (buster)
Phát hành: 10
Tên mã: buster
Mạng
Cho đến khi nó được chuyển đến thư viện, máy chủ ở văn phòng tại nhà của tôi được kết nối với bộ định tuyến AVM Fritz!Box 7490.
ls/sys/lớp/mạng/
br0 enp42s0 lo
con mèo/etc/mạng/giao diện
# Tệp này mô tả các giao diện mạng có sẵn trên hệ thống của bạn
# và cách kích hoạt chúng. Để biết thêm thông tin, xem giao diện (5).
nguồn /etc/network/interfaces.d/*
# Giao diện mạng loopback
tự động lo
vòng lặp iface lo inet
# Giao diện mạng chính
hướng dẫn sử dụng iface enp42s0 inet
# Cài đặt cầu br0
tự động br0
iface br0 inet tĩnh
bridge_ports enp42s0
địa chỉ 192.168.10.50
mạng 192.168.10.0
phát 192.168.10.255
mặt nạ mạng 255.255.255.0
cổng 192.168.10.1
máy chủ tên dns 94.247.43.254 194.36.144.87 192.168.10.1
bridge_stp tắt
cầu_fd 0
cầu_maxwait 0
(Các máy ảo có địa chỉ 192.168.10.51, 192.168.10.52)
liên kết ip -s hiển thị dev br0
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state Chế độ LÊN MẶC ĐỊNH nhóm mặc định qlen 1000
liên kết/ether 2c:f0:5d:e4:36:d5 brd ff:ff:ff:ff:ff:ff
RX: lỗi gói byte bị rơi tràn ngập mcast
206602 2218 0 1130 0 177
TX: lỗi gói byte bị rớt sóng mang collsns
99981 593 0 0 0 0
con mèo /proc/net/dev
Liên-| Nhận | Chuyển giao
khuôn mặt | gói byte bị lỗi thả khung fifo nén phát đa hướng | byte gói lỗi thả fifo colls nhà cung cấp dịch vụ được nén
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
enp42s0: 58580534 42260 0 38 0 0 0 289 1467123 19358 0 0 0 0 0 0
tuyến đường -n
Hạt nhân-IP-Routentabelle
Ziel Router Genmask Flag Metric Ref Sử dụng 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/lớp/mạng/
br0 enp42s0 lo vnet0