Professional Documents
Culture Documents
THỰC TẬP CƠ SỞ
Ngành: Truyền thông và mạng máy tính
1
Chương I: TÌM HIỂU VỀ GIAO THỨC ĐƯỜNG HẦM.............................................3
1.1 Giới thiệu các giao thức đường hầm......................................................................3
1.2 PPTP (Point - to - Point Tunneling Protocol).......................................................3
1.2.1. Nguyên tắc hoạt động của PPTP....................................................................3
1.2.2. Nguyên tắc kết nối điều khiển đường hầm theo giao thức PPTP.................4
1.2.3. Nguyên lý đóng gói dữ liệu đường hầm PPTP...............................................5
1.3. L2F (Layout 2 Forwarding)..................................................................................7
1.3.1. Nguyên tắc hoạt động của L2F.......................................................................7
1.3.2. Cấu trúc gói của L2F.......................................................................................9
1.4. L2TP (Layer Two Tunneling Protocol)................................................................9
1.4.1. Quá trình xử lý L2TP......................................................................................9
1.4.2. Cấu trúc gói dữ liệu L2TP:...........................................................................11
1.5. IPSec (IP Security Protocol)................................................................................11
1.5.1. Cơ chế làm việc của IPSec.............................................................................12
1.5.2. Các chế độ đóng gói dữ liệu IP của IPSec....................................................13
1.6. GRE (Generic Routing Encapsulation)..............................................................14
1.6.1. Khái niệm GRE..............................................................................................14
1.6.2. Các ưu điểm của GRE...................................................................................15
1.6.3. Phân loại GRE...............................................................................................15
1.6.3.1. Point-to-Point GRE.................................................................................15
1.6.3.2. Point-to-Multipoint GRE (mGRE)........................................................16
1.6.4. Cơ chế hoạt động của GRE...........................................................................17
CHƯƠNG II: MÔ PHỎNG CHƯƠNG TRÌNH..........................................................18
2.1. Các phần mềm sử dụng.......................................................................................18
2.1.1. Cisco Packet Tracer.......................................................................................18
2.1.2. Wireshark.......................................................................................................19
2.2. Mô phỏng..............................................................................................................20
2
Chương I: TÌM HIỂU VỀ GIAO THỨC ĐƯỜNG HẦM
1.1 Giới thiệu các giao thức đường hầm
Có rất nhiều giao thức đường hầm khác nhau trong công nghệ VPN, và việc sử
dụng các giao thức nào lên quan đến các phương pháp xác thực và mật mã đi kèm. Một
số giao thức đường hầm phổ biến hiện nay là:
Giao thức tầng hầm chuyển tiếp lớp 2 (L2F).
Giao thức đường hầm điểm tới điểm (PPTP).
Giao thức tầng hầm lớp 2 (L2TP).
GRE
IPSec
Trước hết ta phân biệt 2 giao thức đầu tiên là PPTP(Point - to - Point Tunneling
Protocol) và L2F(Layer two Forwarding). PPTP là giao thức do nhiều công ty hợp tác
phát triển. L2F là do Cisco phát triển độc lập. PPTP và L2F đều được phát triển dựa trên
giao thức PPP (Point - to - Point Protocol). PPP là một giao thức truyền thông nối tiếp lớp
2, có thể sử dụng để đóng gói dữ liệu liên mạng IP và hỗ trợ đa giao thức lớp trên. Trên
cơ sở PPTP và L2F, IETF đã phát triển giao thức đường ngầm L2TP. Hiện nay giao thức
PPTP và L2TP được sử dụng phổ biến hơn L2F.
Trong các giao thức đường hầm nói trên, IPSec là giải pháp tối ưu về mặt an toàn dữ liệu
của gói tin. Nó được sử dụng các phương pháp xác thực và mật mã tương đối cao. IPSec
mang tính linh động hơn, không bị ràng buộc bởi các thuật toán xác thực hay mật mã nào
cả.
1.2 PPTP (Point - to - Point Tunneling Protocol)
1.2.1. Nguyên tắc hoạt động của PPTP
PPP là giao thức truy nhập vào Internet và các mạng IP phổ biến hiện nay. Nó làm
việc ở lớp liên kết dữ liệu trong mô hình OSI, PPP bao gồm các phương thức đóng gói,
tách gói IP, là truyền đi trên chỗ kết nối điểm tới điểm từ máy này sang máy khác.
PPTP đóng gói các khung dữ liệu của giao thực PPP vào các IP datagram để
truyền qua mạng IP (Internet hoặc Intranet). PPTP dùng một kết nối TCP (gọi là kết nối
điều khiển PPTP) để khởi tạo, duy trì, kết thúc đường ngầm; và một phiên bản của giao
thức GRE (Generic Routing Encapsulation - đóng gói định tuyến chung) để đóng gói các
khung PPP. Phần tải tin của khung PPP có thể được mật mã hoặc/và giải nén.
3
PPTP sử dụng PPP để thực hiện các chức năng :
Thiết lập và kết thức kết nối vật lý
Xác định người dùng
Tạo các gói dữ liệu PPP.
PPTP có thể tồn tại một mạng IP giữa PPTP khách và PPTP chủ của mạng. PPTP
khách có thể được đấu nối trực tiếp tới máy chủ thông qua truy nhập mạng NAS để thiết
lập kết nối IP. Khi kết nối được thực hiện có nghĩa là người dùng đã được xác nhận. Đó
là giai đoạn tuy chọn trong PPP, tuy nhiên nó luôn luôn được cung cấp bởi ISP. Việc xác
thực trong quá trình thiết lập kết nối dựa trên PPTP sử dụng các cơ chế xác thực của kết
nối PPP. Một số cơ chế xác thực được sử dụng là :
Giao thức xác thực mở rộng EAP (Extensible Authentication Protocol)
Giao thức xác thực có thử thách bắt tay CHAP (Challenge Handshake
Authentication Protocol)
Giao thức xác nhận mật khẩu PAP (Password Authentication Protocol)
Giao thức PAP hoạt động trên nguyên tắc mật khẩu được gửi qua kết nối dưới dạng
văn bản đơn giản và không có bảo mật. CHAP là giao thức các thức mạnh hơn, sử dụng
phương pháp bắt tay ba chiều để hoạt động, và chống lại các tấn công quay lại bằng cách
sử dụng các giá trị bí mật duy nhất và không thể đoán và giải được.
Khi PPP được thiết lập kết nối, PPTP sử dụng quy luật đóng gói của PPP để đóng gói
các gói truyền trong đường hầm. Để có thể dự trên những ưu điểm của kết nối tạo bởi
PPP, PPTP định nghĩa hai loại gói là điểu khiển và dữ liệu, sau đó gán chúng vào hai
kênh riêng là kênh điều khiển và kênh dữ liệu. PPTP tách các kênh điều khiển và kênh dữ
liệu thành những luồng điều khiển với giao thức điều khiển truyền dữ liệu TCP và luồng
dữ liệu với giao thức IP. Kết nối TCP tạo ra giữa các máy khách và máy chủ được sử
dụng để truyền thông báo điều khiển.
Các gói dữ liệu là dữ liệu thông thường của người dùng. Các gói điều khiển được đua
vào theo một chu kì để lấy thông tin và trạng thái kết nối và quản lý báo hiệu giữa ứng
máy khách PPTP và máy chủ PPTP. Các gói điều khiển cũng được dùng để gửi các thông
tin quản lý thiết bị, thông tin cấu hình giữa hai đầu đường hầm.
Kênh điều khiển được yêu cầu cho việc thiết lập một đường hầm giữa các máy khách
và máy chủ PPTP. Máy chủ PPTP là một Server có sử dụng giao thức PPTP với một giao
diện được nối với Internet và một giao diện khác nối với Intranet, còn phần mềm client có
thể nằm ở máy người dùng từ xa hoặc tại các máy chủ ISP.
4
1.2.2. Nguyên tắc kết nối điều khiển đường hầm theo giao thức PPTP
Kết nối điều khiển PPTP là kết nối giữa địa chỉ IP của máy khách PPTP và địa chỉ
máy chủ. Kết nối điều khiển PPTP mang theo các gói tin điều khiển và quản lý được sử
dụng để duy trì đường hầm PPTP. Các bản tin này bao gồm PPTP yêu cầu phản hồi và
PPTP đáp lại phải hồi định kì để phát hiện các lỗi kết nối giữa các máy trạm và máy chủ
PPTP. Các gói tin của kết nối điều khiển PPTP bao gồm tiêu đề IP, tiêu đề TCP và bản
tin điều khiển PPTP và tiêu đề, phần cuối của lớp liên kết dữ liệu.
5
c. Đóng gói lớp liên kết dữ liệu: Để có thể truyền qua mạng LAN hoặc WAN, gói tin IP
cuối cùng sẽ được đóng gói với một tiêu đề và phần cuối của lớp liên kết dữ liệu ở giao
diện vật lý đầu ra. Ví dụ, nếu gói tin IP được gửi qua giao diện Ethernet, nó sẽ được gói
với phần tiêu đề và đuôi Ethernet. Nếu gói tin IP được gửi qua đường truyền WAN điểm
tới điểm (ví dụ như đường điện thoại tương tự hoặc ISDN), nó sẽ được đóng gói với phần
tiêu đề và đuôi của giao thức PPP.
d. Sơ đồ đống gói trong giao thức PPTP: Quá trình đóng gói PPTP từ một máy trạm qua
kết nối truy nhập VPN từ xa sử dụng modem được mô phỏng theo hình dưới đây.
6
NDISWAN gửi dữ liệu tới giao thức PPTP, nơi đóng gói khung PPP với phần tiêu
đề GRE. Trong tiêu đề GRE, trường chỉ số cuộc gọi được đặt giá trị thích hợp xác
định đường hầm.
Giao thức PPTP sau đó sẽ gửi gói vừa hình thành tới giao thức TCP/IP.
TCP/IP đóng gói dữ liệu đường hầm PPTP với phần tiêu đề IP, sau đó gửi kết quả
tới giao diện đại diện cho kết nối quay số tới ISP cục bộ NDIS.
NDIS gửi gói tin tới NDISWAN, cung cấp các tiêu đề và đuôi PPP.
NDISWAN gửi khung PPP kết quả tới cổng WAN tương ứng đại diện cho phần
cứng quay số (ví dụ, cổng không đồng bộ cho kết nối modem).
1.3. L2F (Layout 2 Forwarding)
1.3.1. Nguyên tắc hoạt động của L2F
Giao thức chuyển tiếp L2F đóng gói những gói tin lớp 2, sau đó trong truyền chúng đi
qua mạng. Hệ thống sử dụng L2F gồm các thành phần sau:
Máy trạm truy nhập mạng NAS(Network Access Server): Hướng lưu lượng đến và
đi giữa các máy khách ở xa (Remote client) và Home Gateway.
Đường hầm(Tunnel): Định hướng đường đi giữa NAS và Home Gateway. Một
đường hầm có thể gồm một số kết nối.
Home Gateway: Ngang hang với NAS, là phần tử cửa ngõ thuộc mạng riêng.
Kết nối(Connection): Là một kết nối PPP trong đường hầm.
Điểm đích(Destianation): Là điểm kết thúc ở đâu xa của đường hầm. Trong trường
hợp này thì Home Gateway là đích.
7
Hình 1.4: Mô hình hệ thống sử dụng L2F
Hoạt động của L2F bao gồm: thiết lập kết nối, định đường hầm và phiên làm việc.
Quá trình hoạt động của giao thức L2F là một quá trình tương đối phức tạp.
Một người sử dụng ở xa quay số tới hệ thống NAS và khởi đầu một kết nối PPP
tới ISP.
Hệ thống NAS và máy trạm có thể trao đổi các gói giao thức điều khiển liên kết
LCP (Link Control Protocol).
NAS sử dụng cơ sở dữ liệu cục bộ liên quan tới điểm tên miền hay xác thực
RADIUS để quyết định xem người sử dụng có hay không yêu cầu dịch vụ L2F.
Nếu người sử dụng yêu cầu L2F thì quá trình tiếp tục, NAS thu nhận địa chỉ của
Gateway đích.
Một đường hầm được thiết lập từ NAS tới Gateway đích nếu giữa chúng có chưa
có đường hầm nào. Sự thành lập đường hầm bao gồm giai đoạn xác thực từ ISP tới
Gateway đích để chống lại tấn công bởi những kẻ thứ ba.
Một kết nối PPP mới được tạo ra trong đường hầm, điều này có tác động kéo dài
phiên PPP mới được tạo ra người sử dụng ở xa tới Home Gateway. Kết nối này được
thiết lập theo một quy trình như sau: Home Gateway tiếp nhận các lựa chọn và tất cả
thông tin xác thực PAP/CHAP như thoả thuận bởi đầu cuối người sử dụng và NAS.
Home Gateway chấp nhận kết nối hay thoả thuận lại LCP và xác thực lại người sử
dụng.
Khi NAS tiếp nhận lưu lượng dữ liệu từ người sử dụng, nó đóng gói lưu lượng vào
trong các khung L2F và hướng chúng vào trong đường hầm.
Tại Home Gateway khung L2F được tách bỏ và dữ liệu đóng gói được hướng tới
mạng một doanh nghiệp hay người dùng.
Khi hệ thống đã thiết lập điểm đích, đường hầm và những phiên kết nối, ta phải điều
khiển và quản lý lưu lượng L2F bằng cách:
Ngăn cản tạo những đích đến, đường hầm và các phiên mới.
Đóng và mở lại tất cả hay chọn lựa những điểm đích, đường hầm và phiên, có khả
năng kiểm tra tổng UDP.
Thiết lập thời gian rỗi cho hệ thống và lưu giữ cơ sở dữ liệu vào các đường hầm
kết nối.
8
1.3.2. Cấu trúc gói của L2F
9
Kết nối ISP’s Intranet Điều khiển mạng
Dial-up
Internet
Hình 1.6: Mô hình quá trình thiết lập đường hầm L2TP
Khi một người dùng từ xa cần thiết lập một L2TP tunel thông qua Internet hoặc
mạng công cộng, lần lượt các bước sau đây:
1) Người dùng từ xa gửi yêu cầu kết nối đến NAS của ISP gần nhất của nó, và đồng
thời bắt đầu khởi tạo một kết nối PPP với ISP sau cùng.
2) NAS chấp nhận yêu cầu kết nối sau khi xác nhận người dùng cuối. NAS dùng
phương pháp xác nhận trên PPP, như PAP, CHAP, SPAP, và EAP cho mục đích này.
3) Sau đó NAS kích hoạt LAC, nơi chưa thông tin về LNS của mạng đích
4) Tiếp theo, LAC thiết lập một đường hầm LAC-LNS thông qua mạng trung gian
giữa hai đầu cuối. Đường hầm trung gian có thể là ATM, Frame Relay, hoặc IP/UDP
5) Sau khi đường hầm đã được thiết lập thành công, LAC chỉ định một Call ID (CID)
đến kết nối và gửi thông điệp thông báo đến LNS. Thông báo xác định này chứa
thông tin có thể được dùng để xác nhận người dùng từ xa (người yêu cầu đường hầm
ban đầu). Thông điệp cũng mang theo cả tùy chọn LCP đã được thoả thuận giữa
người dùng và LAC.
6) LNS dùng thông tin đã nhận được trong thông điệp thông báo để xác nhận người
dùng cuối. Nếu người dùng được xác nhận thành công và LNS chấp nhận yêu cầu tạo
lập đường hầm, một giao diện PPP ảo (L2TP tunnel) được thiết lập cùng với sự giúp
đỡ của tùy chọn LCP nhận được trong thông điệp thông báo.
10
7) Sau đó người dùng từ xa và LNS bắt đầu trao đổi dữ liệu thông qua đường hầm.
L2TP, giống PPTP và L2F, hỗ trợ hai chế độ hoạt động L2TP, bao gồm:
Chế độ gọi đến. Trong chế độ này, yêu cầu kết nối được khởi tạo bởi người dùng
từ xa.
Chế độ gọi đi. Trong chế độ này, yêu cầu kết nối được khởi tạo bởi LNS. Do đó,
LNS chỉ dẫn LAC lập một cuộc gọi đến người dùng từ xa. Sau khi LAC thiết lập cuộc
gọi, người dùng từ xa và LNS có thể trao đổi những gói dữ liệu đã qua đường hầm.
1.4.2. Cấu trúc gói dữ liệu L2TP:
Thông qua giao thức lớp 2 L2TP ta xét các mức đóng gói dữ liệu của giao thức
này như dưới đây:
Đóng gói L2TP: Phần tải PPP ban đầu được đóng gói với một tiêu đề PPP và một
tiêu đề L2TP.
Đóng gói UDP: Gói L2TP sau đó được đóng gói với một tiêu đề UDP, các địa chỉ
nguồn và đích được đặt bằng 1701.
Đóng gói IPSec: Tuỳ thuộc vào chính sách IPSec, gói UDP được mật mã và đóng
gói với tiêu đề IPSec ESP và đuôi IPSec ESP, đuôi IPSec Authentication.
Đóng gói IP: Gói IPSec được đóng gói với tiêu đề IP chứa địa chỉ IP nguồn và
đích của VPN client và VPN server.
Đóng gói lớp liên kết dữ liệu: Do đường hầm L2TP hoạt động ở lớp 2 của mô hình
OSI- lớp liên kết dữ liệu nên các gói IP cuối cùng sẽ được đóng gói với phần tiêu đề
và đuôi tương ứng với kỹ thuật ở lớp liên kết dữ liệu của giao diện vật lý đầu ra.
Ví dụ, khi các gói IP được gửi vào một giao diện Ethernet, thì gói IP này sẽ được
đóng gói với tiêu đề Ethernet và đuôi. Khi các gói IP được gửi trên đường truyền
WAN điểm-tới-điểm (chẳng hạn đường dây điện thoại) thì gói IP được đóng gói với
tiêu đề và đuôi PPP.
11
1.5. IPSec (IP Security Protocol)
1.5.1. Cơ chế làm việc của IPSec
Mục đích của IPSec là bảo vệ luồng dữ liệu truyền tải giữa các mạng LAN với
nhau và chúng ta có thể hiểu hơn về IPSec qua các bước dưới đây:
12
Hình 1.9: Sơ đồ kết nối 2 Router chạy IPSec
1.5.2. Các chế độ đóng gói dữ liệu IP của IPSec
Giao thức ESP và giao thức AH là hai giao thức chính trong việc mã hoá và xác
thực dữ liệu. ESP sử dụng IP Protocol number là 50 (ESP được đóng gói bởi giao thức IP
và trường protocol trong IP là 50). AH sử dụng IP Protocol number là 51 (AH được đóng
gói bởi giao thức IP và trường protocol trong IP là 51).
Bộ giao thức IPSec hoạt động trên 2 chế độ chính: chế độ truyền tải (Transports
Mode) và chế độ Tunnel (Tunnel Mode). Khi giao thức IPSec hoạt động ở Tunnel Mode
thì sau khi đóng gói dữ liệu, giao thức ESP mã hoá toàn bộ Payload, frame Header, IP
Header thì nó sẽ thêm một IP Header mới vào gói tin trước khi forward đi. Khi giao thức
IPSec hoạt động ở Transport Mode thì IP Header vẫn được giữ nguyên và lúc này giao
thức ESP sẽ chèn vào giữa Payload và IP Header của gói tin.
Chế độ giao vận: Chỉ có trọng tải (dữ liệu được truyền) của gói tin IP mới được
mã hóa hoặc chứng thực. IP header không bị chỉnh sửa hay mã hóa, nhưng khi chế độ
Authentication header của IPSec được sử dụng thì địa chỉ IP cũng sẽ được mã hóa
bằng cách chia nhỏ thành các gói tin riêng rẽ và độc lập (Hash ). Các tầng giao vận và
ứng dụng thường được bảo đảm bởi hàm Hash, vì vậy chúng không thể bị sửa đổi
theo bất kỳ cách nào.
13
Chế độ giao vận chỉ thêm vào gói tin IP một lượng byte nhất định, vì thế dung
lượng tăng không đáng kể. Kiểu Transport có ưu điểm là chỉ thêm vào gói IP ban đầu
một số it byte. Nhưng tại chế độ này các thiết bị trong mạng có thể phát hiện và đọc được
IP địa chỉ nguồn và đích của gói tin và có thể thực hiện một số xử lý (ví dụ như phân tích
lưu lượng) dựa trên các thông tin của IP header. Tuy nhiên nếu được mật mã bởi ESP các
thiết bị trong mạng sẽ không biết được dữ liệu cụ thể bên trong gói tin IP. Và theo
khuyến cáo của IETF thì chế độ truyền tải chỉ nên sử dụng khi các đầu cuối đều sử dụng
công nghệ mã hóa bảo mật là IPSec.
Chế độ Tunnel: Toàn bộ gói tin IP sẽ được mã hóa và/hoặc chứng thực. Sau đó
nó được đóng gói vào một gói tin IP mới với tiêu đề IP mới. Chế độ tunnel được sử
dụng để tạo VPN phục vụ cho việc liên lạc giữa các mạng (ví dụ như giữa các bộ định
tuyến để liên kết các trang web), liên lạc giữa máy chủ và mạng (ví dụ như truy cập
người sử dụng từ xa), và giữa các máy chủ (ví dụ như chat cá nhân).
Authenticated
Encrypted
Authenticated
14
đơn giản và hiệu quả để chuyển dữ liệu thông qua mạng public network, như Internet.
GRE cho phép hai bên chia sẻ dữ liệu mà họ không thể chia sẻ với nhau thông qua mạng
public network.
GRE đóng gói dữ liệu và chuyển trực tiếp tới thiết bị mà de-encapsulate gói tin và
định tuyến chúng tới đích cuối cùng. Gói tin và định tuyến chúng tới đích cuối cùng.
GRE cho pháp các switch nguồn và đích hoạt động như một kết nối ảo point-to-point với
các thiết bị khác (bởi vì outer header được áp dụng với GRE thì trong suốt với payload
được đóng gói bên trong).
Ví dụ: GRE tạo tunnel cho phép các giao thức định tuyến như RIP và OSPF
chuyển tiếp các gói tin từ một switch tới switch khác thông qua mạng Internet. Hơn nữa,
GRE tunnel có thể đóng gói các dữ liệu truyền multicast để truyền thông qua Internet..
1.6.2. Các ưu điểm của GRE
Cho phép đóng gói nhiều giao thức và truyền thông qua một giao thức backbone
(IP protocol).
Cung cấp cách giải quyết cho các mạng bị hạn chế hop (hạn chế số hop di chuyển
tối đa trong một mạng).
Kết nối các mạng con gián tiếp.
Yêu cầu ít tài nguyên hơn các giải pháp tunnel khác. (ví dụ Ipsec VPN).
1.6.3. Phân loại GRE
GRE là giao thức có thể đóng gói bất kì gói tin nào của lớp network. GRE cung
cấp khả năng có thể định tuyến giữa những mạng riêng (private network) thông qua môi
trường Internet bằng cách sử dụng các địa chỉ IP đã được định tuyến.
GRE truyền thống là point-to-point, còn mGRE là sự mở rộng khái niệm này bằng
việc cho phép một tunnel có thể đến được nhiều điểm đích, mGRE tunnel là thành phần
cơ bản nhất trong DMVPN.
1.6.3.1. Point-to-Point GRE
Đối với các tunnel GRE point-to-point thì trên mỗi router spoke (R2 & R3) cấu
hình một tunnel chỉ đến HUB (R1) ngược lại, trên router HUB cũng sẽ phải cấu hình hai
tunnel, một đến R2 và một đến R3. Mỗi tunnel như vậy thì cần một địa chỉ IP. Giả sử mô
hình trên được mở rộng thành nhiều spoke, thì trên R1 cần phải cấu hình phức tạp và tốn
không gian địa chỉ IP.
Đây là mô hình của 1 Point-to-Point GRE:
15
Hình 1.12: Point-to-Point GRE
Trong tunnel GRE point-To-point, điểm đầu và cuối được xác định thì có thể
truyền dữ liệu. Tuy nhiên, có một vấn đề phát sinh là nếu địa chỉ đích là một multicast
(chẳng hạn 224.0.0.5) thì GRE point-to-point không thực hiện được. Để làm được việc
này thì phải cần đến mGRE.
1.6.3.2. Point-to-Multipoint GRE (mGRE)
Như vậy, mGRE giải quyết được vấn đề đích đến là một địa chỉ multicast. Đây là
tính năng chính của mGRE được dùng để thực thi Multicast VPN trong Cisco IOS. Tuy
nhiên, trong mGRE, điểm cuối chưa được xác định nên nó cần một giao thức để ánh xạ
địa chỉ tunnel sang địa chỉ cổng vật lý. Giao thức này được gọi là NHRP (Next Hop
Resolution Protocol)
16
Hình 1.13: Point-to-Multipoint (mGRE)
Đối với các mGRE Tunnel thì mỗi router chỉ có một Tunnel được cấu hình cùng
một subnet logical.
1.6.4. Cơ chế hoạt động của GRE
Để tạo ra các kênh truyền, GRE cũng thực hiện việc đóng gói gói tin tương tự như
giao thức IPSec hoạt động ở Tunnel mode. Trong quá trình đóng gói, GRE sẽ thêm các
header mới vào gói tin, và header mới này cung cấp các thông số cần thiết dùng để truyền
các gói tin thông qua môi trường trung gian.
GRE chèn ít nhất 24 byte vào đầu gói tin, trong đó 20 byte là IP header mới dùng
để định tuyến, còn 4 byte là GRE header. Ngoài ra GRE còn có thể tùy chọn thêm 12
byte mở rộng để cung cấp tính năng tin cậy như: checksum, key chứng thực, sequence
number.
17
Hình 1.14: Định dạng packet được đóng gói với GRE
Cấu trúc gói tin được đóng gói thêm GRE header
GRE Hai byte đầu tiên trong phần header là GRE flag 2-byte. Phần bày chứa các
cờ dùng để chỉ định những tính năng tùy chọn của GRE
- Bit 0 (checksum): Nếu bit này được bật lên (giá trị bằng 1) thỉ phần checksum
được thêm vào sau trường Protocol type của GRE header.
- Bit 2 (key): Nếu bit này được bật lên thì phần Key tính năng chứng thực sẽ được
áp dụng, đây như dạng password ở dạng clear text. Khi một thiết bị tạo nhiều tunnel đến
nhiều thiết bị đích thì key này được dùng để xác định các thiết bị đích.
- Bit 3 (Sequence number): Khi bit này được bật thì phần sequence number được
thêm vào GRE header.
Hai byte tiếp theo là phần Protocol Type chỉ ra giao thức lớp 3 của gói tin ban đầu
được GRE đóng gói và truyền qua kênh truyền.
Khi gói tin đi qua tunnel nó sẽ được thêm GRE header như trên và sau khi tới đầu
bên kia của kênh truyền, gói tin sẽ được loại bỏ GRE header để trả lại gói tin ban đầu.
CHƯƠNG II: MÔ PHỎNG CHƯƠNG TRÌNH
2.1. Các phần mềm sử dụng
2.1.1. Cisco Packet Tracer
Cisco Packet Tracer là một phần mềm giả lập mạng dùng trong học tập sử dụng
các thiết bị mạng (router/switch) của Cisco. Nó được hãng Cisco cung cấp miễn phí cho
các trường lớp, sinh viên đang giảng dạy/ theo học chương trình mạng của Cisco. Sản
phẩm cung cấp một công cụ để nghiên cứu các nguyên tắc cơ bản của mạng và các kỹ
năng làm việc với hệ thống Cisco.
18
Hình 2.1: Phần mềm Cisco Packet Tracer
2.1.2. Wireshark
19
Bộ phân tích gói mạng này được sử dụng như một thiết bị đo lường. dùng để kiểm
tra những gì đang xảy ra bên trong cáp mạng (network cable), không khác gì chức năng
của một vôn kế được thợ điện sử dụng để kiểm tra những gì đang xảy ra bên trong cáp
điện. Trước đây, các công cụ này thường được bán phí cao tốn kém, hoặc độc quyền,
hoặc cả hai. Tuy nhiên với sự ra đời của wireshark tất cả những điều đó đã thay đổi.
Wireshark có lẽ là một trong những phần mềm phân tích gói tin có mã nguồn mở
tốt nhất hiện nay.
Sử dụng Wireshark nhằm các mục đích sau:
- Network administrators sử dụng wireshark để khắc phục sự cố mạng.
- Các kỹ sư Network security sử dụng Wireshark để kiểm tra các vấn đề bảo mật.
- Các kỹ sư QA (Quality Assurance) sử dụng wireshark để xác minh các network
applications.
- Các developers sử dụng Wireshark để gỡ lỗi triển khai giao thức.
2.2. Mô phỏng
- Xây dựng mô hình mô phỏng hoạt động GRE trên Cisco Packet Tracer, bao gồm: các
thiết bị mạng: Route 4331, Switch, Máy server, Máy client.
20
Giải thích mô hình:
Mô hình sẽ thực hiện quá trình trao đổi gói tin qua đường hầm GRE giữa máy
server và máy client.
Phần 1: Định cấu hình cơ bản
Cấu hình SiteA
Bước 1: Các chế độ cấu hình
Router> (Chế độ người dùng)
Router>enable (Vào chế độ Privileged EXEC Mode-bắt đầu cho phép cấu hình)
Router>#config (Vào chế độ Configuration Mode)
Bước 2: Cấu hình đặt tên và IP cho Router
Router(config)#hostname SiteA (Đặt tên cho router)
SiteA(config)#int s0/1/0 (Vào giao diện cần cấu hình)
SiteA(config-if)#ip address 11.1.1.0 255.255.255.252 (Khai báo IP và Subnet mark)
SiteA(config-if)#no shutdown
SiteA(config-if)#int gi0/0/0
SiteA(config-if)#ip address 10.1.1.1 255.255.255.0
SiteA(config-if)#no shutdown
SiteA(config-if)#^Z (Ctrl+z)
SiteA#wr (Lưu cấu hình đang chạy trên RAM vào NVRAM)
Bước 3: Cấu hình đường mặc định hướng tới ISP
SiteA#config
SiteA(config)#ip route 0.0.0.0 0.0.0.0 11.1.1.2
Cấu hình ISP
Bước 1: Các chế độ cấu hình
Router> (Chế độ người dùng)
Router>enable (Vào chế độ Privileged EXEC Mode-bắt đầu cho phép cấu hình)
21
Router>#config (Vào chế độ Configuration Mode)
Bước 2: Cấu hình đặt tên và IP cho Router
Router(config)#hostname ISP (Đặt tên cho router)
ISP(config)#int s0/1/0 ( Vào giao diện cần cấu hình)
ISP(config-if)#ip address 11.1.1.2 255.255.255.252 (Khai báo IP và Subnet mark)
ISP (config-if)#no shutdown
ISP (config-if)#int gi0/0/0
ISP (config-if)#ip address 12.1.1.2 255.255.255.252
ISP (config-if)#no shutdown
ISP (config-if)#^Z (Ctrl+z)
ISP #wr (Lưu cấu hình đang chạy trên RAM vào NVRAM)
Cấu hình SiteB
Bước 1: Các chế độ cấu hình
Router> (Chế độ người dùng)
Router>enable (Vào chế độ Privileged EXEC Mode-bắt đầu cho phép cấu hình)
Router>#config (Vào chế độ Configuration Mode)
Bước 2: Cấu hình đặt tên và IP cho Router
Router(config)#hostname SiteB (Đặt tên cho router)
SiteB(config)#int s0/1/0 (Vào giao diện cần cấu hình)
SiteB(config-if)#ip address 12.1.1.0 255.255.255.252 (Khai báo IP và Subnet mark)
SiteB(config-if)#no shutdown
SiteB(config-if)#int gi0/0/0
SiteB(config-if)#ip address 20.1.1.1 255.255.255.0
SiteB(config-if)#no shutdown
SiteB(config-if)#^Z (Ctrl+z)
SiteB#wr (Lưu cấu hình đang chạy trên RAM vào NVRAM)
Bước 3: Cấu hình đường mặc định hướng tới ISP
22
SiteB#config
SiteB(config)#ip route 0.0.0.0 0.0.0.0 12.1.1.2
Phần 2: Định cấu hình đường hầm GRE giữa router SiteA và router SiteB
Cấu hình SiteA:
Bước 1: Định cấu hình giao diện đường hầm GRE trên router SiteA và SiteB dưới
dạng giao diện WAN
SiteA#config
SiteA(config)#int tunnel 0
SiteA(config-if)#ip address 192.168.1.1 255.255.255.252
SiteA(config-if)#tunnel source serial 0/1/0
SiteA(config-if)#tunnel destination 12.1.1.1
Bước 2: Xác minh trạng thái của đường hầm GRE 0, giao thức đường hầm, nguồn
và điểm đến của đường hầm
SiteA#sh int tunnel 0
23
Bước 3: Thực hiện ping router SiteA và SiteB
SiteA#ping 192.168.1.2
Bước 4: Thực hiện traceroute để xác định đường dẫn đến đường hầm
SiteA#traceroute 192.168.1.2
24
Bước 3: Thực hiện ping router SiteA và SiteB
SiteB#ping 192.168.1.1
Bước 4: Thực hiện traceroute để xác định đường dẫn đến đường hầm
SiteB#traceroute 192.168.1.1
Phần 3: Định cấu hình định tuyến qua đường hầm GRE
Cấu hình SiteA:
25
Bước 1: Cấu hình EIGRP AS 100 trên router SiteA và SiteB và ip mạng muốn
quảng bá, mạng LAN
SiteA#config
SiteA(config)#router eigrp 100
SiteA(config-router)#network 192.168.1.0 0.0.0.3 (0.0.0.3 là mặt nạ đại diện cho
255.255.255.252)
SiteA(config-router)#network 10.1.1.0 0.0.0.255
SiteA(config-router)#no auto-summary (Không tự ghép các dãi địa chỉ IP thành 1 dải
lớn)
Bước 2: Xác nhận cấu hình EIGRP
SiteA#sh ip ei neighbors (Câu lệnh đầy đủ là show ip eigrp neighbors)
26
Bước 1: Cấu hình EIGRP AS 100 trên router SiteA và SiteB và ip mạng muốn
quảng bá, mạng LAN
SiteB#config
SiteB(config)#router eigrp 100
SiteB(config-router)#network 192.168.1.0 0.0.0.3 (0.0.0.3 là mặt nạ đại diện cho
255.255.255.252)
SiteB(config-router)#network 20.1.1.0 0.0.0.255
SiteB(config-router)#no auto-summary (Không tự ghép các dãi địa chỉ IP thành 1 dải lớn)
Bước 2: Xác nhận cấu hình EIGRP
SiteB#sh ip ei neighbors (Câu lệnh đầy đủ là show ip eigrp neighbors)
27
PC2 ping tới PC1
28