Hướng dẫn Config Bonding và Inter Vlan trên Server Linux
Network Bonding hiểu một cách đơn giản là cấu hình 2 hay nhiều Card mạng chạy song song nhau, hỗ trợ nhau hay nói cách khác là cân bẳng tải và đảm bảo tính sẵn sàng cao cho Server, nếu 1 trong 2 card bị Down thì dịch vụ trên Server vẫn chạy bình thường bằng các Card mạng khác. Hãy theo dõi thông tin dưới đây cùng Bizfly Cloud để biết rõ hơn nhé!
Các Mode của Bonding:
mode=0 (Balance Round Robin)
mode=1 (Active backup)
mode=2 (Balance XOR)
mode=3 (Broadcast)
mode=4 (802.3ad)
mode=5 (Balance TLB)
mode=6 (Balance ALB)
VLAN là một từ viết tắt của Virtual Local Area Network. Trên cùng 1 Interface chúng ta có thể config nhiều VLAN ID cùng một lúc.
Hướng dẫn cấu hình bonding 2 card mạng và sử dụng vlan ID
Step 1: Chuẩn bị các gói cài đặt cần thiết
# apt-get update
# apt-get install build-essential ifenslave ethtool vlan
Step 2: Load modul 8021q
# modprobe 8021q
Step 3: Load module bonding --> Áp dụng đối với server bonding
# echo "bonding" >> /etc/modules
# echo "8021q" >> /etc/modules
Step 4: Enable packet forwarding for IPv4
# vi /etc/sysctl.conf
net.ipv4.ip_forward=1
Step 5: Cấu hình các thông số cho Bond, chọn chế độ chạy cho Bond
- Áp dụng đối với OS Ubuntu
# alias bond0 bonding
# options bonding mode=4 arp_interval=100 miimon=100 xmit_hash_policy=1 lacp_rate=1
- Áp dụng đối với OS Centos
# alias bond0 bonding
# options bonding mode=4 miimon=100
Note:
- Bond0: Tên của Bond được tạo ra.
- Miimon: Xác định mức độ thường xuyên, tính bằng milli giây, bond được kiểm tra nếu nó vẫn đang hoạt động.
- Mode: chế độ bond đang chạy. (mode 4: Cân bằng tải)
Step 6: Edit file hash policy
Note: Áp dụng đối với server config mode 4 (LACP)
# echo "layer3 4 1" > /sys/devices/virtual/net/bond0/bonding/xmit_hash_policy
Step 7. Config Interface
Chú ý: Tạo file interface ifcfg-bond0
auto bond0
iface bond0 inet static
address x.x.x.x
netmask x.x.x.x
network x.x.x.x
broadcast x.x.x.x
bond-miimon 100
bond-mode 4
bond-slaves none
bond-xmit-hash-policy 1
bond-lacp-rate 1
up /sbin/ifenslave bond0 em1 em2
down /sbin/ifenslave -d bond0 em1 em2
Chú ý: Chỉnh sửa các NIC thành phần của bond0. Cần chú ý đến tham số cấu hình MATSTER và SLAVE.
auto p1p1
iface p1p1 inet manual
bond-master bond0
auto p1p2
iface p1p2 inet manual
bond-master bond0
Nếu là Config interVLAN
# For Ubuntu
auto bond0
iface bond0 inet manual
bond-miimon 100
bond-mode 4
bond-slaves none
bond-xmit-hash-policy 1
bond-lacp-rate 1
up /sbin/ifenslave bond0 p1p1 p1p2
down /sbin/ifenslave -d bond0 p1p1 p1p2
auto bond0.100
iface bond0.100 inet static
address x.x.x.x
netmask x.x.x.x
network x.x.x.x
broadcast x.x.x.x
vlan-raw-device bond0
# For Centos:
ifcfg-enp13s0
DEVICE=enp13s0
TYPE=Ethernet
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ifcfg-enp14s0
DEVICE=enp14s0
TYPE=Ethernet
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
#ifcfg-bond0
DEVICE=bond0
TYPE=Ethernet
BOOTPROTO=none
------------------------------------------------------
#ifcfg-vlan370
VLAN=yes
VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD
DEVICE=vlan370
PHYSDEV=bond0
BOOTPROTO=none
TYPE=Ethernet
IPADDR=x.x.x.x
NETMASK=x.x.x.x
GATEWAY=x.x.x.x
------------------------------------------------------
#ifcfg-vlan1098
VLAN=yes
VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD
DEVICE=vlan1098
PHYSDEV=bond0
BOOTPROTO=none
TYPE=Ethernet
IPADDR= x.x.x.x
NETMASK= x.x.x.x
Step 8. Restart lại network
# service network restart
Step 9. Kiểm tra lại bonding và VLAN ID
# Cat /proc/net/bonding/bond0
# Cat /proc/net/vlan/config
Như vậy là chúng ta đã tiến hành việc bonding và tag VLAN trên Linux.
>> Tham khảo thêm: Tìm hiểu về công cụ hỗ trợ pam_tty_audit trong Linux Auditting