Điểm:0

QEMU với KVM: Không thể ping hoặc SSH giữa máy chủ và máy khách

lá cờ kp

Chỉnh sửa: Kể từ khi macvtap không hoạt động để liên lạc giữa máy chủ và khách, tôi đã thử sử dụng cầu, nhưng sau đó không có internet trên máy chủ và ping hoặc ssh vẫn không hoạt động.

Đây là cách tôi đã tạo ra một cầu:

kết nối nmcli thêm loại cầu ifname br0

Đầu ra:
Kết nối 'bridge-br0' (bf1406b0-4ea8-4338-9edc-0f58fd019bec) đã được thêm thành công.


nmcli con thêm loại ethernet con-name br-slave-1 ifname enp0s25 master br0

nmcli con thêm loại ethernet con-name br-slave-1 ifname enp0s25 master br0

nmcli con sửa đổi bridge-br0 bridge.stp no

kết nối nmcli thêm loại ethernet ifname bridge-br0 ipv4.method auto

Đầu ra:
Đã thêm thành công kết nối 'ethernet-bridge-br0' (6c2c5495-6e43-4cd5-a574-014042987781).


Sau khi khởi động lại:

nmcli con hiển thị

TÊN UUID LOẠI THIẾT BỊ  
cầu-br0 bf1406b0-4ea8-4338-9edc-0f58fd019bec cầu br0     
br-slave-1 a998c09f-5f46-4586-b654-cdfa6a21dca5 ethernet enp0s25 
ethernet-bridge-br0 6c2c5495-6e43-4cd5-a574-014042987781 ethernet --      
Kết nối có dây 1 8559f62b-0cb9-3935-ba65-b6d57c0043c8 ethernet --      

Bây giờ nếu tôi ngắt kết nối br-nô lệ-1:

nmcli con down br-slave-1

Tôi có internet trở lại trên máy chủ nhưng sau đó không có internet trên máy khách và ping vẫn không hoạt động:

Vậy có cách nào để sử dụng ssh giữa máy chủ và khách trong khi sử dụng qemu với kvm, sử dụng nmcli hoặc GUI quản lý mạng? Cảm ơn nhiều.

Ghi chú: Vì tôi cần bật và tắt một số mạng không dây khác nhau, nên tôi muốn tránh xa sơ đồ mạng hoặc giao diện mạng, do đó tôi đang cố gắng thiết lập cầu nối bằng cách sử dụng nmcli hoặc GUI quản lý mạng.

bài gốc:

Tôi đang cố gắng SSH vào máy khách từ máy chủ. Cả máy chủ và máy khách đều là Ubuntu MATE 21.04.

Internet hoạt động tốt cả từ máy chủ và máy khách.

Các địa chỉ IP:

(1) Bộ định tuyến: Asus RT AC68U > 192.168.1.1
(2) Máy chủ: Ubuntu MATE 21.04 > 192.168.1.106
(3) Khách: Ubuntu MATE 21.04 > 192.168.1.139

Tường lửa đã bị tắt/dừng trên cả ba:

(1) Bộ định tuyến: Asus RT AC68U > Tường lửa SPI > Đã tắt
(2) Máy chủ: Ubuntu MATE 21.04 > Sudo systemctl stop nftables
(3) Khách: Ubuntu MATE 21.04 > Sudo systemctl stop nftables

Khi tôi cố gắng ssh-bản sao-id, tôi gặp lỗi này: Không có tuyến đường đến máy chủ lưu trữ

ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: cố gắng đăng nhập bằng (các) khóa mới, để lọc ra bất kỳ khóa nào đã được cài đặt

/usr/bin/ssh-copy-id: LỖI: ssh: kết nối với máy chủ 192.168.1.139 cổng 22: Không có đường đến máy chủ

Vì vậy, tôi đã cố gắng ping (cả hai cách đều không hoạt động; "host to guest" hoặc "guest to host"):

ping 192.168.1.139

PING 192.168.1.139 (192.168.1.139) 56(84) byte dữ liệu.
Từ 192.168.1.106 icmp_seq=1 Máy chủ đích không thể truy cập
Từ 192.168.1.106 icmp_seq=2 Máy chủ đích không thể truy cập

Tuy nhiên ping không hoạt động từ "Máy chủ đến bộ định tuyến" hoặc "khách đến bộ định tuyến":

ping từ máy chủ đến bộ định tuyến:

ping 192.168.1.1

PING 192.168.1.1 (192.168.1.1) 56(84) byte dữ liệu.
64 byte từ 192.168.1.1: icmp_seq=1 ttl=64 time=0,400 ms
64 byte từ 192.168.1.1: icmp_seq=2 ttl=64 time=0,339 ms

ping từ khách đến bộ định tuyến:

ping 192.168.1.1

PING 192.168.1.1 (192.168.1.1) 56(84) byte dữ liệu.
64 byte từ 192.168.1.1: icmp_seq=1 ttl=64 time=0,651 ms
64 byte từ 192.168.1.1: icmp_seq=2 ttl=64 time=0,625 ms

Máy chủ và máy khách được kết nối thông qua cầu nối mạng anh trai, mà tôi đã tạo bằng cách sử dụng GUI của Trình quản lý Netwrok. Cầu anh trai có hai "kết nối bắc cầu", br0 nô lệ 1br0 nô lệ 2.

Bật STP (Giao thức cây mở rộng là "không được kiểm tra". Mặc dù nó không tạo ra bất kỳ sự khác biệt nào ngay cả khi tôi đã "kiểm tra" nó.

Các chi tiết bổ sung mà tôi nghĩ sẽ hữu ích:

sudo nano /etc/libvirt/qemu/networks/host-bridge.xml

<mạng>
  <name>host-bridge</name>
  <uuid>0ae7be62-9f9e-4346-9309-88985dd0f5ad</uuid>
  <chế độ chuyển tiếp='cầu nối'/>
  <tên cây cầu='br0'/>
</mạng>


danh sách mạng virsh --all

 Tên Trạng thái Tự khởi động Liên tục
---------------------------------------------
 cầu chủ hoạt động có có

Kết quả của ip mộtip r trên máy chủ:

ip một

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 trạng thái qdisc noqueue nhóm UNKNOWN mặc định qlen 1000
    liên kết/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    máy chủ phạm vi inet 127.0.0.1/8 lo
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi
2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc trạng thái fq_codel LÊN nhóm mặc định qlen 1000
    liên kết/ether e0:69:95:4d:7c:9c brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.106/24 brd 192.168.1.255 phạm vi toàn cầu động noprefixroute enp0s25
       hợp lệ_lft 599784 giây ưa thích_lft 599784 giây
    inet 192.168.1.104/24 brd 192.168.1.255 phạm vi toàn cầu thứ cấp noprefixroute enp0s25
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi
3: wlxd0374547816a: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc trạng thái mq DOWN nhóm mặc định qlen 1000
    liên kết/ether d0:37:45:47:81:6a brd ff:ff:ff:ff:ff:ff
4: br0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc trạng thái noqueue DOWN nhóm mặc định qlen 1000
    liên kết/ether 96:d5:ab:3c:a7:e8 brd ff:ff:ff:ff:ff:ff
7: macvtap2@enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue trạng thái nhóm UP mặc định qlen 500
    liên kết/ether 52:54:00:1f:6a:cd brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.140/24 brd 192.168.1.255 phạm vi toàn cầu noprefixroute macvtap2
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi

ip r       

mặc định qua 192.168.1.1 dev enp0s25 proto dhcp src 192.168.1.104 số liệu 202 
mặc định qua 192.168.1.1 dev macvtap2 proto dhcp src 192.168.1.140 số liệu 207 
169.254.0.0/16 dev macvtap2 chỉ số liên kết phạm vi 1000 
192.168.1.0/24 dev enp0s25 liên kết phạm vi proto dhcp src 192.168.1.104 số liệu 202 
192.168.1.0/24 dev macvtap2 liên kết phạm vi proto dhcp src 192.168.1.140 số liệu 207 

Kết quả của ip mộtip r trên máy khách:

ip một

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 trạng thái qdisc noqueue nhóm UNKNOWN mặc định qlen 1000
    liên kết/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    máy chủ phạm vi inet 127.0.0.1/8 lo
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi
    inet6 ::1/128 máy chủ phạm vi 
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc trạng thái fq_codel LÊN nhóm mặc định qlen 1000
    liên kết/ether 52:54:00:1f:6a:cd brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.139/24 brd 192.168.1.255 phạm vi toàn cầu động noprefixroute enp2s0
       hợp lệ_lft 603989sec ưa thích_lft 603989sec
    inet6 fe80::d316:3db7:9af5:8d0c/64 liên kết phạm vi noprefixroute 
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi

ip r

mặc định qua 192.168.1.1 dev enp2s0 proto dhcp metric 100 
169.254.0.0/16 dev enp2s0 chỉ số liên kết phạm vi 1000 
192.168.1.0/24 dev enp2s0 liên kết phạm vi kernel proto src 192.168.1.139 số liệu 100 

Chi tiết NIC (từ Trình quản lý máy ảo) của máy khách:

Giao diện mạng ảo:

Nguồn mạng: Thiết bị Macvtap
Tên thiết bị: enp0s25
Kiểu thiết bị: virtio

XML:
<loại giao diện="trực tiếp">
  <mac address="52:54:00:1f:6a:cd"/>
  <source dev="enp0s25" mode="bridge"/>
  < target dev="macvtap2"/>
  <model type="virtio"/>
  <tên bí danh="net0"/>
  <address type="pci" domain="0x0000" bus="0x02" slot="0x00" function="0x0"/>
</giao diện>

Hệ điều hành: Ubuntu MATE 21.04

qemu: 1:5.2+dfsg-9ubuntu3

cầu nối: 1.6-5ubuntu1

quản lý đức hạnh: 1:3.2.0-3

libvirt-daemon: 7.0.0-2ubuntu2

Cảm ơn rất nhiều trước.

Chỉnh sửa-1:

brctl hiển thị br0

tên cầu id cầu giao diện hỗ trợ STP
br0 8000.96d5ab3ca7e8 không      
user535733 avatar
lá cờ cn
Có vẻ giống với https://superuser.com/questions/349253/guest-and-host-cannot-see-each-other-using-linux-kvm-and-macvtap.
Doug Smythies avatar
lá cờ gn
bạn nhận được gì cho `brctl show br0`. `enp0s25` dường như được liên kết với `br0` và tôi đã mong đợi br0 có địa chỉ ip chứ không phải enp0s25. Thiết bị Macvtap của bạn có vẻ độc lập, hãy xóa nó.
Jags avatar
lá cờ kp
@doug-smythies vừa thêm thông tin. Ngoài ra, việc xóa `Macvtap` là bắt buộc... 'vì tôi không chắc nhưng có thể nó cần cho một máy ảo khác không? Cảm ơn.
Jags avatar
lá cờ kp
@ user535733 Tôi đang xem qua chủ đề bạn đã liên kết nhưng đó là chủ đề dài 10 năm tuổi và cho đến nay, trong nháy mắt, tôi vẫn chưa tìm ra giải pháp áp dụng cho trường hợp của mình. Cảm ơn.
Doug Smythies avatar
lá cờ gn
Tất cả những gì tôi có thể nói là tôi không sử dụng Macvtap và tôi chạy nhiều máy ảo cùng lúc. Tôi đã mong đợi giao diện `enp0s25` của bạn được kết nối với `br0' nhưng không phải vậy.
user535733 avatar
lá cờ cn
Từ chuỗi siêu người dùng: "* macvtap không hoạt động đối với giao tiếp từ máy chủ đến mạng khách *" Đó là vấn đề bạn gặp phải. Tất cả những câu trả lời đó là cách giải quyết cho giới hạn đó của macvlan/macvtap. Nếu bạn muốn kết nối máy chủ và khách, một giải pháp đơn giản và dễ bảo trì là dành thời gian trước để thiết lập cầu nối *thực*.
Jags avatar
lá cờ kp
@ user535733 khi tôi thiết lập qemu/kvm ban đầu, mạng cầu nối không hoạt động, do đó tôi đã sử dụng `macvtap`. Tôi nghĩ rằng tôi đã cấu hình cầu nối đúng cách nhưng bất kể tôi đã thay đổi mức độ ưu tiên nào, `Trình quản lý mạng` vẫn kết nối lại giữa `Kết nối có dây 1` và `enp0s25`. Ngay cả khi tôi đã thử điều này từ thiết bị đầu cuối `nmcli kết nối lên kết nối ` và `nmcli lên
Jags avatar
lá cờ kp
@ user535733 chấp nhận câu trả lời trên chuỗi bạn đã liên kết, không có thông tin chi tiết nào cả. Có một liên kết đến một trang khác có giải pháp chi tiết, nhưng nó không hoạt động và điều đó cũng được đề cập bởi người khác trong chủ đề đó.Liên kết đến bài viết đó: `https://wiki.libvirt.org/page/Guest_can_reach_outside_network%2C_but_can%27t_reach_host_%28macvtap%29` Một lần nữa xin cảm ơn.
Doug Smythies avatar
lá cờ gn
cho chúng tôi xem tệp giao diện netplan của bạn. Của tôi được gọi là `/etc/netplan/01-netcfg.yaml`. Lưu ý: Tôi không sử dụng `NetworkManager`, vì vậy có thể mọi thứ sẽ khác đối với nó.
Điểm:0
lá cờ gn

I would have expected your VM's to use your bridge, br0 for the communication method desired. I am running 3 VM's and get:

doug@s19:~$ brctl show br0
bridge name     bridge id               STP enabled     interfaces
br0             8000.3c7c3f0d9983       no              enp3s0
                                                        vnet0
                                                        vnet1
                                                        vnet2

And on the host:

doug@s19:~$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UP group default qlen 1000
    link/ether 3c:7c:3f:0d:99:83 brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 3c:7c:3f:0d:99:83 brd ff:ff:ff:ff:ff:ff
    inet 192.168.111.136/24 brd 192.168.111.255 scope global dynamic br0
       valid_lft 45219sec preferred_lft 45219sec
4: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UNKNOWN group default qlen 1000
    link/ether fe:54:00:22:2f:dc brd ff:ff:ff:ff:ff:ff
5: vnet1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UNKNOWN group default qlen 1000
    link/ether fe:54:00:60:ea:3e brd ff:ff:ff:ff:ff:ff
6: vnet2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UNKNOWN group default qlen 1000
    link/ether fe:54:00:60:ea:5e brd ff:ff:ff:ff:ff:ff

with my netplan network file, /etc/netplan/01-netcfg.yaml:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:
      dhcp4: no
  bridges:
    br0:
      interfaces: [ enp3s0 ]
      dhcp4: yes

And the related section of one of the VM's .xml definition file:

<interface type='bridge'>
  <mac address='52:54:00:22:2f:dc'/>
  <source bridge='br0'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
Jags avatar
lá cờ kp
Tôi không sử dụng và cố gắng tránh sử dụng `netplan` và/hoặc `giao diện mạng`. Tôi đang cố gắng tạo và sử dụng cầu nối bằng cách sử dụng `nmcli` hoặc `GUI của Trình quản lý mạng`. Tôi đã trải qua 15-20 hướng dẫn/chủ đề. Sau khi dành hơn 4 giờ, một khi tôi có thể kết nối máy GUEST với `br0` nhưng sau đó mất internet trên HOST và `ping` từ máy khách sang máy chủ hoặc ngược lại vẫn không hoạt động :(
Jags avatar
lá cờ kp
Tôi đã đăng cấu hình cầu nối của mình với câu hỏi: `nano /etc/libvirt/qemu/networks/host-bridge.xml` Cảm ơn bạn.
Doug Smythies avatar
lá cờ gn
`host-bridge.xml` của bạn giống với của tôi. Trình quản lý mạng chỉ trở thành trình kết xuất cho netplan, phải không?
Jags avatar
lá cờ kp
vâng, tôi đoán vậy. Internet có dây của tôi đôi khi bị hỏng hàng giờ cho đến cả ngày, vì vậy tôi cần Trình quản lý mạng để thay đổi thường xuyên giữa các mạng không dây (3 điểm phát sóng điện thoại)... hoặc tôi sẽ sử dụng `netplan` hoặc `giao diện mạng`.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.