Quản lý mạng phá vỡ các tuyến thủ công


9

Tôi có Ubuntu 13.10, Saucy Salamander x64 đang hoạt động với tư cách là khách trong VirtualBox (với Windows 7 là máy chủ lưu trữ).

Tôi đã viết điều này /etc/network/interfacesbởi vì tôi cần thêm một số lượng lớn các tuyến tĩnh thủ công, cố định:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet dhcp
    up ip -force -b /etc/network/eth1-routes

eth1-routes chứa một số dòng của mẫu:

route add 10.0.0.0/8 via 172.x.x.x dev eth1

đâu 172.x.x.xlà cổng mà VBox NAT cho tôi.

Bằng cách chạy, netstat -nrcó vẻ như tất cả các tuyến thủ công của tôi đã được thêm thành công, bao gồm các tuyến để đến hai máy chủ DNS thông qua 172.x.x.x.

Tuy nhiên, quản lý mạng nói rằng cả hai thiết bị đều "không được quản lý". Nếu tôi đặt /etc/NetworkManager/NetworkManager.conf managed=true, trình quản lý mạng sẽ hoạt động trở lại nhưng các tuyến của tôi bị mất. Vì vậy, thỏa hiệp hiện tại của tôi là thiết lập managed=falsevà nhận xét các eth0dòng trong /etc/network/interfaces.

Có cách nào để quản lý một thiết bị và vẫn thực hiện các tuyến thủ công như trên không?

Câu trả lời:


4

Quản lý mạng không nhận ra các báo cáo bạn đã viết /etc/network/interfaces.

Vì vậy, bạn có thể thêm tập lệnh của mình eth1-routesdưới dạng tập lệnh điều phối cho Trình quản lý mạng /etc/network/if-up.d/. Nó sẽ được chạy mỗi khi một giao diện đi lên. Có lẽ bạn phải viết trong kịch bản của mình một "mệnh đề if" để chỉ thêm các tuyến nếu eth1xuất hiện. Như thế này:

if [ "$IFACE" == "eth1" ]; then
  route add ...
  route add ...
fi

5

Trình quản lý mạng quản lý các tuyến tĩnh của riêng nó - trình quản lý mạng mở và chọn "kết nối có dây 1". Chọn chỉnh sửa. chọn tab IPv4. Ở dưới cùng của trang này là một nút cho "Tuyến đường". Đó là nơi bạn thêm chúng. Khi hoàn tất, NM ghi vào một tệp có quyền root trong thư mục / etc / NetworkManager / system-links / của nó được gọi là "Kết nối có dây 1"

Ví dụ sau

ls -l /etc/NetworkManager/system-connections/
total 4.0K
-rw------- 1 root root 216 Aug 26 10:38 Wired connection 1

sudo cat /etc/NetworkManager/system-connections/Wired\ connection\ 1

[802-3-ethernet]
mac-address=A:Real:Mac:Add:re:ss

[connection]
id=Wired connection 1
uuid=df4491fc-0981-4071-82ae-04c7b2d6d9fc
type=802-3-ethernet

[ipv6]
method=auto

[ipv4]
method=auto
route1=10.2.2.0/24,10.1.1.68,1

Trong đó 10.2.2.0 là mạng đích và 10.1.1.68 là cổng.


1

Nếu bạn muốn thêm một tuyến đường vào Ubuntu vẫn duy trì khởi động lại và không sử dụng giao diện mặc định làm cổng thì bạn có thể muốn thêm một câu lệnh tuyến đường vào tệp cấu hình NetworkManager cho giao diện cụ thể.

Thêm một tuyến đường vào tệp cấu hình / etc / NetworkManager / system-links / "tên kết nối" bằng cách thêm câu lệnh tuyến đường vào tệp cấu hình cho (giả sử IPv4). Tuyến đường có bốn phần; "đầu tiên là mạng hoặc địa chỉ IPv4 đích (thứ tự byte mạng), thứ hai là tiền tố mạng hoặc địa chỉ thứ hai (1 - 32), thứ ba là hop kế tiếp (thứ tự byte mạng) nếu có, và thứ tư là số liệu tuyến đường " .

[ipv4]
method=auto
route1=172.16.0.0/16,192.168.3.1,1

Điều này tương đương với việc thiết lập tuyến đường bằng cách sử dụng câu lệnh tuyến đường sau:

route add -net 172.16.0.0 netmask 255.255.0.0 gw 192.168.3.1

Tên khóa của tuyến đường được xác định trong Bảng 12 trong tài liệu dành cho nhà phát triển NetmorkManager. Vui lòng xem URL sau để biết thêm thông tin: https://developer.gnome.org/NetworkManager/0.9/ref-sinstall.html

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.