CẤU HÌNH TRUNK VÀ GÁN VLAN CHO SWITCH CISCO
9 - CÁCH CẤU HÌNH TRUNK VÀ GÁN VLAN CHO SWITCH CISCO
I. ĐỊNH NGHĨA VÀ ỨNG DỤNG CỦA TRUNK TRONG THIẾT BỊ CISCO
Trong hạ tầng mạng, đặc biệt là khi triển khai giải pháp chia mạng LAN ảo (VLAN), Trunk (hay Trunking) là một khái niệm và là kỹ thuật cấu hình đường truyền không thể thiếu trên các thiết bị mạng Cisco.
Dưới đây là định nghĩa chi tiết và các ứng dụng thực tế của đường truyền Trunk trong thiết bị Cisco.
1. Định nghĩa về Trunking trong thiết bị Cisco
1.1. Đường truyền Trunk (Trunk Port) là gì
Trunk là một cấu hình trên cổng của thiết bị mạng (thường là Switch, Router hoặc Firewall) cho phép nhiều VLAN khác nhau cùng truyền và nhận dữ liệu trên một sợi cáp vật lý duy nhất.
Để dễ hình dung, nếu cổng Access giống như một con đường làng chỉ cho phép một loại xe (1 VLAN) đi qua, thì cổng Trunk đóng vai trò như một tuyến đường cao tốc đa làn, cho phép tất cả các loại xe (nhiều VLAN) chạy song song mà không bị lẫn lộn vào nhau.
1.2. Cơ chế đóng gói và gắn thẻ dữ liệu (VLAN Tagging)
Khi nhiều VLAN cùng đi qua một sợi dây, làm thế nào Switch ở đầu bên kia biết được gói tin nào thuộc về VLAN nào để phân phối cho đúng? Thiết bị Cisco sử dụng cơ chế Gắn thẻ (Tagging):
Khi một gói tin (Frame) đi vào cổng Trunk, Switch gửi sẽ "đập" thêm một cái thẻ (Tag) có chứa số ID của VLAN đó vào Frame Header.
Khi gói tin sang đến Switch nhận, Switch nhận sẽ đọc số VLAN ID trên thẻ, gỡ bỏ thẻ đó ra và đẩy gói tin đến đúng cổng thuộc VLAN tương ứng.
Chuẩn mã hóa: Hiện nay, các thiết bị Cisco sử dụng chuẩn chung quốc tế là IEEE 802.1Q (thường gọi tắt là Dot1q). Trước đây Cisco có chuẩn độc quyền là ISL (Inter-Switch Link) nhưng hiện tại đã bị khai tử trên các dòng thiết bị đời mới để đảm bảo tính tương thích toàn cầu.
2. Ứng dụng thực tế của Trunk trong thiết bị Cisco
Đường truyền Trunk được ứng dụng rộng rãi và bắt buộc trong các kịch bản thiết kế hạ tầng mạng phân tầng:
2.1. Kết nối liên thông giữa các Switch (Switch-to-Switch)
Đây là ứng dụng phổ biến nhất. Trong một tòa nhà nhiều tầng hoặc một doanh nghiệp lớn có nhiều tủ Rack:
Bạn có Tầng 1 và Tầng 2, cả hai tầng đều có nhân viên phòng Kế toán (VLAN 10) và phòng Kỹ thuật (VLAN 20).
Thay vì phải kéo 2 sợi dây cáp riêng biệt giữa Switch Tầng 1 và Switch Tầng 2 cho 2 VLAN, bạn chỉ cần kéo 1 sợi cáp duy nhất và cấu hình cổng đó thành Trunk. Nhân viên VLAN 10 ở Tầng 1 có thể nói chuyện mượt mà với nhân viên VLAN 10 ở Tầng 2 thông qua sợi cáp dùng chung này.

2.2. Định tuyến giữa các VLAN với mô hình Router-on-a-Stick
Mặc định, các thiết bị thuộc các VLAN khác nhau sẽ không thể nhìn thấy nhau. Để chúng có thể trao đổi dữ liệu (ví dụ: Máy tính ở VLAN nhân viên muốn truy cập vào Server ở VLAN hệ thống), dữ liệu phải được định tuyến qua Router.
Ứng dụng: Thay vì cắm mỗi VLAN một dây vật lý vào Router (rất lãng phí cổng trên Router), người ta cấu hình cổng kết nối trên Router thành cổng Trunk (bằng cách chia các cổng ảo Sub-interface).
Tất cả lưu lượng từ các VLAN sẽ chạy lên Router qua đường Trunk này để được định tuyến, sau đó đi vòng ngược trở lại xuống Switch. Mô hình kinh điển này gọi là Router-on-a-Stick.
2.3. Kết nối hạ tầng lên Tường lửa (Firewall) bảo mật
Tương tự như Router, các dòng Firewall của Cisco (như Cisco ASA hoặc Firepower) thường nhận rất nhiều lưu lượng từ các VLAN đổ về để kiểm tra an ninh (Deep Packet Inspection), lọc mã độc, thiết lập ACL.
Ứng dụng: Cổng kết nối giữa Core Switch và Firewall sẽ được cấu hình làm đường Trunk. Nhờ đó, Firewall có thể đứng ở trên cao, quản lý và áp đặt các chính sách bảo mật riêng biệt cho từng VLAN (VLAN Kế toán được đi đâu, VLAN Guest chỉ được ra Internet...) chỉ thông qua một liên kết vật lý duy nhất.
2.4. Kết nối vào hệ thống Máy chủ ảo hóa (Hypervisor Server)
Trong các trung tâm dữ liệu (Data Center) hoặc phòng Server doanh nghiệp lớn chạy ảo hóa (như VMware ESXi, Microsoft Hyper-V):
Một máy chủ vật lý mạnh mẽ có thể chứa hàng chục máy ảo (VM). Mỗi máy ảo lại thuộc về một VLAN khác nhau (VM làm Web Server thuộc VLAN Web, VM làm Database thuộc VLAN DB).
Ứng dụng: Cổng Switch cắm vào card mạng của Server ảo hóa này bắt buộc phải cấu hình là cổng Trunk. Hệ điều hành ảo hóa phía dưới sẽ tự đọc các Tag 802.1Q để phân phối mạng chính xác đến từng máy ảo bên trong nó.
II. CÁC BƯỚC VÀ CÁC CÂU LỆNH CẤU HÌNH TRUNK TRONG THIẾT BỊ SWITCH CISCO
Cấu hình trunk trên switch Cisco cho phép bạn truyền nhiều VLAN qua một kết nối vật lý duy nhất. Điều này thường được sử dụng để kết nối các switch với nhau hoặc kết nối switch với router. Dưới đây là các bước và câu lệnh để cấu hình trunk trên một cổng của switch Cisco:
Bước 1: Truy cập vào chế độ cấu hình toàn cục (Global Configuration Mode)
Bước 2: Chọn giao diện (cổng) cần cấu hình làm trunk
Sử dụng lệnh interface để chọn cổng bạn muốn cấu hình làm trunk. Ví dụ, để cấu hình cổng GigabitEthernet1/0/1:
FdcSwtcisco(config)# interface GigabitEthernet1/0/1
Bước 3: Đặt chế độ hoạt động của cổng là trunk
Sử dụng lệnh switchport mode trunk để cấu hình cổng đã chọn thành cổng trunk. Lệnh này sẽ cho phép cổng mang lưu lượng của nhiều VLAN.
FdcSwtcisco(config-if)# switchport mode trunk
Bước 4: (Tùy chọn) Cấu hình VLAN được phép truyền qua trunk
Theo mặc định, một cổng trunk sẽ cho phép tất cả các VLAN (từ VLAN 1 đến VLAN 4094) đi qua. Bạn có thể giới hạn các VLAN được phép truyền qua trunk bằng lệnh switchport trunk allowed vlan.
Cho phép một hoặc nhiều VLAN cụ thể: Sử dụng dấu phẩy (,) để liệt kê các VLAN hoặc dấu gạch ngang (-) để chỉ định một dải VLAN.
FdcSwtcisco(config-if)# switchport trunk allowed vlan <danh_sách_VLAN>
Ví dụ, chỉ cho phép VLAN 10, 20 và 30 đi qua trunk:
FdcSwtcisco(config-if)# switchport trunk allowed vlan 10,20,30
Ví dụ, cho phép các VLAN từ 100 đến 200 đi qua trunk:
FdcSwtcisco(config-if)# switchport trunk allowed vlan 100-200
Thêm VLAN vào danh sách VLAN được phép (không ghi đè cấu hình hiện tại): Sử dụng từ khóa add.
FdcSwtcisco(config-if)# switchport trunk allowed vlan add <danh_sách_VLAN>
Ví dụ, thêm VLAN 40 và 50 vào danh sách VLAN được phép:
FdcSwtcisco(config-if)# switchport trunk allowed vlan add 40,50
Xóa VLAN khỏi danh sách VLAN được phép: Sử dụng từ khóa remove.
FdcSwtcisco(config-if)# switchport trunk allowed vlan remove <danh_sách_VLAN>
Ví dụ, xóa VLAN 20 khỏi danh sách VLAN được phép:
FdcSwtcisco(config-if)# switchport trunk allowed vlan remove 20
Bước 5: (Tùy chọn) Cấu hình VLAN Native
VLAN native là VLAN mà lưu lượng không được gắn thẻ VLAN (untagged traffic) sẽ thuộc về khi đi qua cổng trunk. Theo mặc định, VLAN native là VLAN 1. Bạn có thể thay đổi VLAN native bằng lệnh switchport trunk native vlan.
FdcSwtcisco(config-if)# switchport trunk native vlan <ID_VLAN>
Ví dụ, đặt VLAN native thành VLAN 99:
FdcSwtcisco(config-if)# switchport trunk native vlan 99
Lưu ý quan trọng về VLAN Native:
Đảm bảo VLAN native được cấu hình giống nhau trên cả hai đầu của kết nối trunk để tránh các vấn đề về truyền thông.
Nên sử dụng một VLAN khác với VLAN dữ liệu người dùng làm VLAN native vì lý do bảo mật và quản lý.
Bước 6: Thoát khỏi chế độ cấu hình giao diện và lưu cấu hình
FdcSwtcisco(config-if)# exit
FdcSwtcisco(config)# exit
FdcSwtcisco# copy running-config startup-config
Tóm tắt các lệnh cấu hình trunk trên một cổng (ví dụ: GigabitEthernet1/0/1):
FdcSwtcisco> enable
FdcSwtcisco# configure terminal
FdcSwtcisco(config)# interface GigabitEthernet1/0/1
FdcSwtcisco(config-if)# switchport mode trunk
FdcSwtcisco(config-if)# switchport trunk allowed vlan 10,20,30
FdcSwtcisco(config-if)# switchport trunk native vlan 99
FdcSwtcisco(config-if)# exit
FdcSwtcisco(config)# exit
FdcSwtcisco# copy running-config startup-config
Các lệnh kiểm tra cấu hình trunk:
show interfaces <tên_giao_diện> switchport: Hiển thị thông tin cấu hình switchport của một cổng, bao gồm chế độ (trunk), VLAN native và danh sách các VLAN được phép.
show interfaces GigabitEthernet1/0/1 switchport
show vlan brief: Hiển thị tóm tắt thông tin về tất cả các VLAN trên switch, bao gồm các cổng trunk. Các cổng trunk sẽ không được liệt kê dưới bất kỳ VLAN cụ thể nào trong cột "Ports".
show vlan brief
Khi cấu hình trunk giữa các switch hoặc giữa switch và router, hãy đảm bảo rằng cấu hình trunk tương thích trên cả hai thiết bị để đảm bảo kết nối và truyền thông VLAN hoạt động đúng cách.
II. CÁC BƯỚC VÀ CÁC CÂU LỆNH GÁN VLAN CHO SWITCH CISCO
Để gán nhiều cổng vào cùng một VLAN một cách nhanh chóng trên switch Cisco, bạn có thể sử dụng tính năng interface range. Tính năng này cho phép bạn cấu hình đồng thời một nhóm các cổng. Dưới đây là các bước và câu lệnh để thực hiện việc này:
Bước 1: Truy cập vào chế độ cấu hình toàn cục (Global Configuration Mode)
Bước 2: Sử dụng lệnh interface range để chọn nhiều cổng
Lệnh interface range cho phép bạn chỉ định một hoặc nhiều cổng để cấu hình đồng thời. Có nhiều cách để chỉ định dải cổng:
Dải liên tục: Sử dụng dấu gạch ngang (-) để chỉ định một dải các cổng liên tiếp. Ví dụ, để chọn các cổng FastEthernet0/1 đến FastEthernet0/10:
interface range FastEthernet0/1 - 10
Các cổng riêng lẻ: Sử dụng dấu phẩy (,) để liệt kê các cổng không liên tiếp. Ví dụ, để chọn các cổng GigabitEthernet1/0/1, GigabitEthernet1/0/3 và GigabitEthernet1/0/5:
interface range GigabitEthernet1/0/1, 3, 5
Kết hợp dải và cổng riêng lẻ: Bạn có thể kết hợp cả dải và các cổng riêng lẻ. Ví dụ:
interface range FastEthernet0/1 - 5, GigabitEthernet1/0/10
Lưu ý: Tên giao diện (ví dụ: FastEthernet, GigabitEthernet) cần được viết đầy đủ cho cổng đầu tiên trong dải hoặc cho từng cổng riêng lẻ. Đối với các cổng tiếp theo trong cùng một loại, bạn chỉ cần chỉ định số.
Bước 3: Cấu hình các cổng là chế độ access và gán vào VLAN
Sau khi đã chọn dải cổng, bạn sẽ ở chế độ cấu hình (config-if-range). Tại đây, bạn có thể nhập các lệnh cấu hình sẽ được áp dụng cho tất cả các cổng đã chọn. Để gán các cổng vào một VLAN, bạn cần:
Đặt chế độ hoạt động của cổng là access:
FdcSwtcisco(config)# switchport mode access
Gán các cổng vào VLAN mong muốn bằng lệnh switchport access vlan:
FdcSwtcisco(config)# switchport access vlan <ID_VLAN>
Thay <ID_VLAN> bằng ID của VLAN mà bạn muốn gán các cổng vào. Ví dụ, để gán các cổng đã chọn vào VLAN 20:
Switch(config)# switchport access vlan 20
Bước 4: Thoát khỏi chế độ cấu hình interface range và lưu cấu hình
Sau khi cấu hình xong, thoát khỏi chế độ (config-if-range) và lưu cấu hình:
FdcSwtcisco(config-if-range)# exit
FdcSwtcisco(config)# exit
FdcSwtcisco# copy running-config startup-config
Ví dụ cụ thể:
Giả sử bạn muốn gán các cổng FastEthernet0/1 đến FastEthernet0/5 và cổng GigabitEthernet1/0/15 vào VLAN 30. Các lệnh sẽ là:
FdcSwtcisco> enable
FdcSwtcisco# configure terminal
FdcSwtcisco(config)# interface range FastEthernet0/1 - 5, GigabitEthernet1/0/15
FdcSwtcisco(config-if-range)# switchport mode access
FdcSwtcisco(config-if-range)# switchport access vlan 30
FdcSwtcisco(config-if-range)# exit
FdcSwtcisco(config)# exit
FdcSwtcisco# copy running-config startup-config
Kiểm tra cấu hình:
Sau khi thực hiện các lệnh trên, bạn có thể kiểm tra xem các cổng đã được gán vào VLAN đúng hay chưa bằng lệnh show vlan brief:
FdcSwtcisco# show vlan brief
Bạn sẽ thấy các cổng FastEthernet0/1 đến FastEthernet0/5 và GigabitEthernet1/0/15 được liệt kê dưới VLAN 30.
Sử dụng interface range là một cách rất hiệu quả để cấu hình nhiều cổng cùng một lúc, giúp tiết kiệm thời gian và công sức khi quản lý switch Cisco. Hãy chắc chắn rằng bạn đã chọn đúng dải cổng trước khi thực hiện cấu hình.