Hầu hết các VPN đều dựa vào kỹ thuật gọi là Tunneling để tạo ra một mạng riêng trên nền Internet. Về bản chất, đây là quá trình đặt toàn bộ gói tin vào trong một lớp header (tiêu đề) chứa thông tin định tuyến có thể truyền qua hệ thống mạng trung gian theo những “đường ống” riêng (tunnel).
Khi gói tin được truyền đến đích, chúng được tách lớp header và chuyển đến các máy trạm cuối cùng cần nhận dữ liệu. Để thiết lập kết nối Tunnel, máy khách và máy chủ phải sử dụng chung một giao thức (tunnel protocol).
Giao thức của gói tin bọc ngoài được cả mạng và hai điểm đầu cuối nhận biết. Hai điểm đầu cuối này được gọi là giao diện Tunnel (tunnel interface), nơi gói tin đi vào và đi ra trong mạng.
Kỹ thuật Tunneling yêu cầu 3 giao thức khác nhau:
– Giao thức truyền tải (Carrier Protocol) là giao thức được sử dụng bởi mạng có thông tin đang đi qua.
– Giao thức mã hóa dữ liệu (Encapsulating Protocol) là giao thức (như GRE, IPSec, L2F, PPTP, L2TP) được bọc quanh gói dữ liệu gốc.
– Giao thức gói tin (Passenger Protocol) là giao thức của dữ liệu gốc được truyền đi (như IPX, NetBeui, IP).
Người dùng có thể đặt một gói tin sử dụng giao thức không được hỗ trợ trên Internet (như NetBeui) bên trong một gói IP và gửi nó an toàn qua Internet. Hoặc, họ có thể đặt một gói tin dùng địa chỉ IP riêng (không định tuyến) bên trong một gói khác dùng địa chỉ IP chung (định tuyến) để mở rộng một mạng riêng trên Internet.
Kỹ thuật Tunneling trong mạng VPN điểm-nối điểm
Trong VPN loại này, giao thức mã hóa định tuyến GRE (Generic Routing Encapsulation) cung cấp cơ cấu “đóng gói” giao thức gói tin (Passenger Protocol) để truyền đi trên giao thức truyền tải (Carier Protocol). Nó bao gồm thông tin về loại gói tin mà bạn đnag mã hóa và thông tin về kết nối giữa máy chủ với máy khách. Nhưng IPSec trong cơ chế Tunnel, thay vì dùng GRE, đôi khi lại đóng vai trò là giao thức mã hóa. IPSec hoạt động tốt trên cả hai loại mạng VPN truy cập từ xa và điểm- nối-điểm. Tất nhiên, nó phải được hỗ trợ ở cả hai giao diện Tunnel.
Trong mô hình này, gói tin được chuyển từ một máy tính ở văn phòng chính qua máy chủ truy cập, tới router (tại đây giao thức mã hóa GRE diễn ra), qua Tunnel để tới máy tính của văn phòng từ xa. |
Kỹ thuật Tunneling trong mạng VPN truy cập từ xa
Với loại VPN này, Tunneling thường dùng giao thức điểm-nối-điểm PPP (Point-to-Point Protocol). Là một phần của TCP/IP, PPP đóng vai trò truyền tải cho các giao thức IP khác khi liên hệ trên mạng giữa máy chủ và máy truy cập từ xa. Nói tóm lại, kỹ thuật Tunneling cho mạng VPN truy cập từ xa phụ thuộc vào PPP.
Các giao thức dưới đây được thiết lập dựa trên cấu trúc cơ bản của PPP và dùng trong mạng VPN truy cập từ xa.
L2F (Layer 2 Forwarding) được Cisco phát triển. L2 F dùng bất kỳ cơ chế thẩm định quyền truy cập nào được PPP hỗ trợ.
PPTP (Point-to-Point Tunneling Protocol) được tập đoàn PPTP Forum phát triển. Giao thức này hỗ trợ mã hóa 40 bit và 128 bit, dùng bất kỳ cơ chế thẩm định quyền truy cập nào được PPP hỗ trợ.
L2TP (Layer 2 Tunneling Protocol) là sản phẩm của sự hợp tác giữa các thành viên PPTP Forum, Cisco và IETF. Kết hợp các tính năng của cả PPTP và L2F, L2TP cũng hỗ trợ đầy đủ IPSec. L2TP có thể được sử dụng làm giao thức Tunneling cho mạng VPN điểm-nối-điểm và VPN truy cập từ xa. Trên thực tế, L2TP có thể tạo ra một tunnel giữa máy khách và router, NAS và router, router và router.