NIC Bonding / Teaming – Debian Sarge
Bản tóm tắt:
Bạn có thể tìm thấy phiên bản dễ đọc hơn tại đây: 5dollarwhitebox.org
Khái niệm NIC Bonding (hoặc đôi khi được gọi là NIC Teaming) là bạn có hai NIC được liên kết với nhau để có vẻ như chúng là cùng một thiết bị vật lý. Tức là cả hai sẽ hiển thị cùng một địa chỉ Phần cứng (MAC). Điều này được thực hiện thông qua tiện ích ifenslave, cho phép hạt nhân chỉ nhìn thấy / sử dụng một thiết bị, trong khi nó gửi các gói thông qua hai thiết bị phụ bằng cách sử dụng bộ lập lịch round-robbin.
Hệ thống:Debian Sarge 3.1 (nhân vani 2.6.12.4)
Các mô-đun tham gia:liên kết, mii, nic_module (e100 trong ví dụ này)
Tiện ích:ifenslave, mii-tool
Sự chuẩn bị:
Trước khi cố gắng liên kết hai NIC, chúng tôi khuyên bạn nên tự mình xác minh tính toàn vẹn và chức năng của từng NIC. Tài liệu này giả định rằng bạn đã làm điều đó. Sử dụng ‘mii-tool’, bạn sẽ thấy một cái gì đó như sau:
hộp kiểm tra: / # mii-tool
eth0: 100baseTx-FD đã thương lượng, liên kết ok
eth1: 100baseTx-FD đã thương lượng, liên kết ok
Để điều này hoạt động, hạt nhân phải có hỗ trợ liên kết
các thiết bị. Một số cách để kiểm tra sẽ là:
hộp kiểm tra: / # modprobe – danh sách | grepliên kết/lib/modules/2.6.12.4-vs2.0/kernel/drivers/net/bonding/bonding.ko
hộp thử: / # cat /boot/config-2.6.12.4-vs2.0 | liên kết grep -i
CONFIG_BONDING = m
Chúng tôi sử dụng công cụ mii (mô-đun mii.o) để giám sát các giao diện cho
chuyển đổi dự phòng … tuy nhiên, vì hầu hết các bộ điều hợp ethernet sử dụng MII (Media
Giao diện độc lập) để tự động thương lượng tốc độ liên kết, tiêu chuẩn khá của nó
rằng bạn sẽ có cái này.
hộp thử: / # cat /boot/config-2.6.12.4-vs2.0 | grep -i mii# CONFIG_MPENTIUMII chưa được đặt
# CONFIG_MPENTIUMIII chưa được đặt
CONFIG_MII = y
testbox: / # modprobe –list | grep -i mii
/lib/modules/2.4.26-2-686/kernel/drivers/net/mii.ko
Thứ hai, bạn sẽ cần cài đặt tiện ích ifenslave.
testbox: / # apt-get update && apt-get install ifenslave
………. loại bỏ đầu ra tiêu chuẩn (không có gì thú vị)
Không có cấu hình ở đây, vì vậy đó là điều đó. Bây giờ chúng tôi đã sẵn sàng cho
các tệp cấu hình.
Tệp cấu hình:
Có nhiều biến thể khác nhau của điều này, nhưng hiện tại … đây là cách tôi đã làm để làm cho nó hoạt động.
vi / etc / modutils / aliasesvà thêm / chỉnh sửa những điều sau:
bí danh bond0 liên kết
bí danh eth0 e100
bí danh eth1 e100
chế độ liên kết tùy chọn = 0 miimon = 100
vi / etc / modutils / actionvà thêm / chỉnh sửa những điều sau:
liên kết thăm dò0 eth0 eth1 liên kết
Sau khi chỉnh sửa các tệp cấu hình modprobe, bạn cần chạy lệnh:
testbox # update-modules
vi / etc / network / interfacevà thêm / chỉnh sửa những điều sau:
trái phiếu tự động0
iface bond0 inet static
địa chỉ 10.1.100.63
netmask 255.255.255.0
hwaddress ether 00: 02: B3: 48: 50: 2C
cổng 10.1.100.1
up ifenslave bond0 eth0 eth1
down ifenslave -d bond0 eth0 eth1
Bạn làmKHÔNG PHẢIthiết lập các mục nhập cho ‘eth0’ hoặc ‘eth1’ ngoài các mục được liệt kê ở trên trong mục nhập ‘bond0’. Bond0 bây giờ sẽ là giao diện mà hạt nhân làm việc với. chạy ‘ifconfig’ sẽ hiển thị cả ba giao diện (bond0, eth0, eth1), tất cả đều có cùng địa chỉ MAC và IP.
Và về cơ bản đó là nó. Bây giờ, tất cả những gì bạn cần làm là tải mô-đun ‘liên kết’ và dừng / bắt đầu kết nối mạng … và các mô-đun thích hợp sẽ tải tự động:
testbox: / # modprobe liên kết
hộp kiểm tra: / # /etc/init.d/networking stophộp thử nghiệm: / # /etc/init.d/networking start
Bạn có thể phải chơi với phần này một chút. Đối với tôi, tôi phải cài đặt thủ công ifconfig up thiết bị bond0:
testbox: / # ifconfig bond0 10.1.15.63 netmask 255.255.255.0 up
Giả sử rằng không có lỗi, bạn sẽ có thể kiểm tra điều này. Thử và ping địa chỉ IP của bạn từ một hộp khác. Bạn sẽ nhận thấy cả hai NIC đều phản hồi các yêu cầu ping qua lại (vòng tròn). Nếu bạn rút phích cắm eth0, bạn sẽ gặp lỗi bảng điều khiển “eth0 đã bị lỗi, eth1 trở thành chính” hoặc tương tự như vậy (và ngược lại nếu bạn rút phích cắm eth1). Nhưng bạn không nên bỏ bất kỳ yêu cầu ping nào (hoặc không nhiều hơn một vài yêu cầu), vì nó hiện có kết nối mạng dự phòng.
Trong môi trường cao cấp hơn, bạn có thể cắm mỗi NIC vào một công tắc riêng biệt (ở trên cùng một VLAN) và cải thiện hơn nữa cấu hình tính sẵn sàng cao của bạn … vân vân và vân vân.
BJ Dierkes, RHCE4-LPIC1
wdierkes [at] 5dollarwhitebox [dot] org
Texas, Hoa Kỳ
Tài nguyên:
Debian GNU / Linux: https://www.debian.org