Tôi đang chạy KVM trên Ubuntu 20.04 bằng kim loại trần và để khách có thể lưu trữ chức năng kết nối mạng, tôi đã thêm giao diện macvlan. Tôi đã thêm một kịch bản dưới /etc/networkd-dispatcher/routable.d/10-macvlan-interfaces.sh
để tạo giao diện macvlan khi khởi động, giao diện này có vẻ hoạt động.
#! /bin/bash
liên kết ip thêm liên kết macvlan0 enp35s0 loại cầu nối chế độ macvlan
Nếu tôi loại bỏ tất cả các tuyến theo cách thủ công và thêm một tuyến như thế này Sudo ip route thêm mặc định qua 10.0.0.17 dev macvlan0 proto tĩnh
và khách của tôi để lưu trữ mạng hoạt động như mong muốn.
Tuy nhiên, khi tôi khởi động lại, dường như có thứ gì đó đang thêm 2 tuyến mà tôi cần xóa để mạng máy chủ - khách của mình hoạt động trở lại. Tôi có thể xóa thủ công 2 tuyến đường này và mọi thứ hoạt động tốt trở lại.
mặc định qua 10.0.0.17 dev macvlan0 số liệu tĩnh proto 100
10.0.0.0/24 dev enp35s0 liên kết phạm vi kernel proto src 10.0.0.17
10.0.0.0/24 dev macvlan0 liên kết phạm vi kernel proto src 10.0.0.17
Câu hỏi của tôi là chính xác điều gì khiến các tuyến đường này được thêm vào?
Cấu hình netplan của tôi trông như thế này:
mạng:
ethernet:
macvlan0:
dhcp4: sai
địa chỉ: [10.0.0.17/24]
tuyến đường:
- đến: 0.0.0.0/0
thông qua: 10.0.0.17
số liệu: 100
máy chủ tên:
địa chỉ: [10.0.0.1]
enp36s0:
dhcp4: đúng
enxbe1c12c3a520:
dhcp4: đúng
enp35s0:
dhcp4: sai
địa chỉ: [10.0.0.17/24]
# cổng4: 10.0.0.1
máy chủ tên:
địa chỉ: [10.0.0.1]
phiên bản: 2
Lý tưởng nhất là tôi muốn khởi động nó và chỉ có tuyến đường mặc định đầu tiên. Mọi sự trợ giúp sẽ rất được trân trọng!