2.7.1. Một số vấn đề cần lưu ý với Mobile Node
MN phải được cấu hình với một mặt nạ địa chỉ (netmask) cũng như địa chỉ
nhà (home address) của nó và địa chỉ IP của một HA. Nếu các thông tin này không
được lưu thì MN có thể tìm được nó qua các thủ tục mô tả dưới đây.
Nếu MN không thể lưu địa chỉ nhà của mình thì nó có thể định danh chính mình thông qua MN NAI (Network Access Identifier). Khi đó trường Home Address trong bản tin yêu cầu đăng ký sẽ đặt bằng 0.0.0.0 và sau đó MN sẽ nhận
được địa chỉ trong bản tin trả lời yêu cầu đăng ký.
Home Agent Foreign Agent Node chuyển tiếp Binding Update IP Packet IP Packet Mobile Node Binding Update Binding Warning Binding Request
MN sẽ lưu các thông tin sau khi chờ trả lời:
- Địa chỉ lớp liên kết của FA mà bản tin yêu cầu đăng ký được gửi đến.
- địa chỉđích của bản tin yêu cầu đăng ký.
- COA được dùng trong khi đăng ký.
- Giá trị Identification
- Giá trị Lifetime.
Một số mã lỗi nhận được trong bản tin trả lời yêu cầu đăng ký.
Code 69: Bị từ chối bởi FA do thời gian sống yêu cầu quá lớn
Trong trường hợp này trường Lifetime trong bản tin yêu cầu đăng ký sẽ
chứa giá trị lớn nhất mà FA có thể chấp nhận được. MN sẽ đăng ký lại với FA theo giá trị này.
Code 133: Từ chối bởi Home Agent do trường Identification không phù hợp.
Code 136: Từ chối bởi Home Agent: không biết địa chỉ của HA).
Khi đó trong bản tin trả lời yêu cầu đăng ký sẽ chứa địa chỉ IP của HA mà gửi trả lời yêu cầu đăng ký.
2.7.2. Những điểm cần lưu ý với Foreign Agent
FA đóng vai trò thụ động trong việc đăng ký, nó chuyển tiếp bản tin yêu cầu đăng ký từ MN tới HA. Khi MN sử dụng FA COA thì FA sẽ mở gói các gói tin nhận từ HA qua đường ngầm để chuyển lại cho MN. Ngoài ra thì FA còn phát các gói tin thông báo về đại lý theo chu kỳ để thông báo cho các MN về sự tồn tại của mình.
Mỗi FA đều có 1 bảng chứa các thông tin về MN mà nó quản lý. Các thông tin đó bao gồm:
- Địa chỉ nhà của MN hoặc địa chỉ COA của MN nếu bit R =1.
- Địa chỉ IP đích.
- Cổng nguồn UDP.
- Địa chỉ HA.
- Giá trị Identification.
- Giá trị thời gian sống (Lifetime) của đăng ký.
- Thời gian còn lại trước khi đăng ký bị hết hạn.
Khi FA nhận được yêu cầu đăng ký nó sẽ kiểm tra để chắc chắn rằng địa chỉ HA không nằm cùng mạng với nó. Nếu không cùng thì FA sẽ gửi yêu cầu đăng ký tới HA, ngược lại nó sẽ trả lời MN bằng bản tin trả lời yêu cầu đăng ký với mã lỗi tương ứng.
Nếu địa chỉ HA nhận được trong bản tin yêu cầu đăng ký nằm cùng mạng với FA thì FA sẽ phục vụ MN như là HA.
Khi FA nhận được bản tin yêu cầu đăng ký từ MN nó sẽ chuyển tiếp cho HA. FA không được thay đổi giá trị của các trường trong gói. Quá trình xử lý gói của FA như sau:
- Loại bỏ tất cả các mở rộng phía sau mở rộng xác thực giữa MN và HA (Mobile-Home Authentication Extension).
- FA có thể thêm các mở rộng khác không phải là loại xác thực.
- Thêm mở rộng xác thực giữa FA và HA (Foreign - Home Authentication Extension) nếu cần.
- Địa chỉ IP nguồn: địa chỉ IP của giao diện mà qua đó FA sẽ gửi Bản tin yêu cầu đăng ký cho HA.
- Địa chỉ IP đích: chép lại từ trường “Home Agent” trong Bản tin yêu cầu đăng ký nhận từ MN.
- Cổng UDP nguồn: có thể thay đổi.
- Cổng UDP đích: 434.
FA sẽ cập nhật danh sách MN mà nó quản lý sau khi nhận được trả lời chấp nhận từ HA. Sau đó sẽ chuyển tiếp bản tin trả lời yêu cầu đăng ký tới MN. Nếu trong khi chờ trả lời từ HA mà FA nhận được bản tin lỗi ICMP thì FA sẽ trả lời MN với mã lỗi “Không thể thấy HA”.
Quá trình kiểm tra bản tin trả lời yêu cầu đăng ký nhận được từ HA như
sau:
- Trước hết FA kiểm tra tính toàn vẹn của gói tin UDP thông qua trường kiểm tra (checksum) trong phần mào đầu UDP.
- Sau đó FA kiểm tra trong danh sách của nó xem có MN nào cùng địa chỉ với
địa chỉ nhà của MN. Nếu không có thì nó huỷ bản tin trả lời yêu cầu đăng ký. Ngoài ra FA cũng so sánh hai giá trị Identification trong bản tin yêu cầu đăng ký và bản tin trả lời yêu cầu đăng ký.
- Mở rộng giữa MN và FA (Foreign-Home Authentication Extension) cũng
được FA kiểm tra.
Sau khi kiểm tra toàn bộ các bước như trên bản tin trả lời yêu cầu đăng ký sẽ được chuyển tiếp tới MN và cập nhật lại danh sách MN mà nó quản lý cùng các thông tin kèm theo.
2.7.3. Những điều cần lưu ý với Home Agent
Khi nhận được bản tin yêu cầu đăng ký HA sẽ kiểm tra theo các bước thứ tự
như sau:
- Kiểm tra các mở rộng xác thực (Authentication Extension).
- Kiểm tra giá trị Identification.
Sau khi kiểm tra tính hợp lệ của bản tin yêu cầu đăng ký, HA sẽ cập nhật lại bảng thông tin của các MN mà nó quản lý.
Một sốđiều cần lưu ý:
- HA có thể từ chối các bản tin yêu cầu đăng ký được gửi quảng bá trong cùng mạng với nó.
- Nếu giá trị trường thời gian sống (Lifetime) bằng 0 và CoA trùng với địa chỉ
nhà của MN thì HA xoá tất cả các thông tin liên quan tới CoA này. Đây chính là cách mà MN yêu cầu HA ngừng cung cấp dịch vụ di động cho nó.
- Nếu Lifetime bằng 0 mà CoA khác địa chỉ nhà của MN thì HA sẽ xoá tất cả
các thông tin liên quan tới CoA này khỏi bảng liên kết.
- Nếu Lifetime>0 thì HA sẽ thêm CoA mới vào bảng liên kết. Nếu bit S=0 thì tất cả các thông tin về CoA này trước đó sẽ bị xoá hết.
Giá trị các trường trong Registration Reply.
Địa chỉ IP nguồn (IP source address )
Được chép lại từ địa chỉ IP đích của bản tin yêu cầu đăng ký . Nếu địa chỉ
IP đích là dạng quảng bá (broadcast) hoặc dạng gửi theo nhóm (multicast) thì HA sẽ đặt địa chỉ của chính mình vào đây.
Địa chỉ IP đích (IP Destination address).
Được chép lại từđịa chỉ IP nguồn của bản tin yêu cầu đăng ký.
UDP Source port
Được chép lại từ cổng đích UDP của bản tin yêu cầu đăng ký.
UDP Destination port
Được chép lại từ cổng nguồn UDP của bản tin yêu cầu đăng ký.
Được chép lại từ trường tương ứng trong bản tin yêu cầu đăng ký. Nếu giá trị này lớn hơn giá trị lớn nhất mà HA có thể chấp nhận được thì nó sẽ được giảm xuống giá trị lớn nhất này.
Thứ tự các mở rộng trong bản tin trả lời yêu cầu đăng ký
- Các mở rộng không phải loại xác thực (Non-authentication extension).
- Mở rộng giữa MN và HA (Mobile-Home Authentication Extension)
- Mở rộng giữa FA và HA (Foreign-Home Authentication Extension)
2.7.4. Một số vấn đềđịnh tuyến trong Mobile IP
a) Với Mobile Node
nếu MN sử dụng địa chỉ tạm thời của Foreign Agent thì nó có thể coi Foreign Agent là bộ định tuyến mặc định trong quá trình định tuyến gói tin. Địa chỉ
MAC của gói tin có thể nhận được thông qua bản tin thông báo về Agent. Ngoài ra thì MN cũng có thể chọn bộđịnh tuyến mặc định trong danh sách các bộđịnh tuyến nhận được trong bản tin thông báo về bộđịnh tuyến (ICMP Router Advertisement). Nếu MN nhận được CoA trùng với địa chỉ nguồn của bản tin thông báo về Agent thì nó có thể lấy địa chỉđó làm địa chỉ của bộđịnh tuyến mặc định.
Khi MN rời khỏi Home Network, nó không được phát gói tin ARP để xác
định địa chỉ MAC của thiết bị khác. Do đó việc có địa chỉ của bộđịnh tuyến thông qua ICMP Router Advertisement không thể sử dụng được trong việc chọn bộ định tuyến mặc định trừ khi MN có cách khác để có thể có địa chỉ MAC mà không phải sử dụng ARP.
b) Với Foreign Agent
Khi Foreign Agent nhận được một gói tin gửi tới địa chỉ CoA được quảng bá nó sẽ kiểm tra địa chỉđích của gói tin xem có trùng với địa chỉ MN đã đăng ký với nó không. Nếu trùng thì Foreign Agent chuyển tiếp gói tin tới MN, ngược lại thì gói tin sẽ bị huỷ bỏ.
Khi nhận được gói tin thừ MN, Foreign Agent kiểm tra rồi gửi cho Home Agent thông qua đường ngầm.
Tương tụ như MN, Foreign Agent cũng không được phát các gói tin quảng bá ARP để xác định địa chỉ MAC của MN. Danh sách địa chỉ MAC của MN được lấy từ các bản tin yêu cầu thông báo về đại lý hoặc bản tin yêu cầu đăng ký. Danh sách này không được hết hạn trước khi MN gửi một bản tin yêu cầu đăng ký mới hoặc khi Foreign Agent có cơ chế khác để có được địa chỉ MAC mà không thông qua ARP.
c) Với Home Agent
Home Agent nhận tất cả các bản tin có địa chỉ tới là của những MN đã đăng ký với nó, nếu địa chỉ IP đích của gói tin trùng với 1 trong các địa chỉ đã được đăng ký thì Home Agent sẽ chuyển tiếp gói tin tới địa chỉ CoA tương ứng.
d) Với các gói tin quảng bá
Khi Home Agent nhận được một gói tin quảng bá nó sẽ kiểm tra trong danh sách MN đã đăng ký xem MN nào yêu cầu nhận được các gói tin quảng bá thông qua bit B trong bản tin yêu cầu và chuyển tiếp gói tin quảng bá này tới các MN đó
2.7.5. Một số phương pháp đóng gói trong Mobile IP
Quá trình chuyển tiếp các gói tin tới địa chỉ CoA được thực hiện bằng cơ
chế đóng gói. Các HA và FA phải có khả năng sử dụng một cơ chếđóng gói ngầm
định IP trong IP. Ngoài ra, còn có các cơ chế đóng gói khác nhưĐóng gói tối thiểu
a) Đóng gói IP trong IP
Hình 26: Đóng gói IP trong IP
Mobile IP xem xét việc đóng gói là cách chung nhất để chuyển các khối từ
một Home Network của MN đến một đại lý. Trong phương pháp đóng gói IP trong IP có một số hạn chế như sau :
- không giải quyết được vấn đề an toàn trong việc sử dụng các tuỳ chọn IP source routing.
- có nhiều node di động Internet xử lý tùy chọn IP source routing không hợp lệ.
- Firewall có thể loại bỏ các khối IP source-routed.
Để đóng gói khối IP sử dụng phương pháp đóng gói IP trong IP, một Outer IP Header được chèn vào trước IP Header đã tồn tại của khối như hình trên. Địa chỉ
nguồn và địa chỉđích của mào đầu gói tin Outer IP Header xác định điểm kết thúc của đường ngầm, địa chỉ đích và nguồn của mào đầu gói tin IP được đóng gói (Inner IP) chỉ ra người gửi và người nhận thực sự của gói tin. Việc đóng và mở gói tin không làm thay đổi nội dung của phần mào đầu IP phía trong ngoại trừ việc có thể trường TTL giảm đi một đơn vị.
Ý nghĩa của các trường :
- Version : 4
- IHL : Internet Header Length – là độ dài của Outer IP Header có giới hạn 32 bit từ khoá.
- TOS : Type of Service – là một bản sao từ một Inner IP Header
- Total Length: được quy định là độ dài của thực thể khối IP đã được đóng gói bao gồm cả outer header, inner header và IP payload.
- Indentification, Flags, Fragment Offset,TTL : Các trường này được đặt theo qui định của phần mào đầu IP. Tuy nhiên nếu bit “Không phân mảnh” (don’t fragment) của phần mào đầu gói IP được đóng gói được đặt bằng 1 thì bit này của phần mào đầu của gói IP ngoài cũng phải được đặt bằng 1.
- Protocol 4
- Header Checksum : Phần kiểm tra tính chính xác của phần mào đầu gói IP ngoài.
- Source Address : Địa chỉ IP của điểm đóng gói gói tin IP
- Destination Address : Địa chỉ IP của điểm mở gói gói tin IP
Khi đóng gói một khối trường TTL trong Inner IP Header giảm đi một đơn vị nếu ống dẫn là một phần của việc chuyển tiếp khối, mặt khác Inner IP Header TTL không thay đổi trong quá trình đóng gói nếu giá trị TTL trong Inner IP Header
được đặt bằng 0
b) Phương pháp đóng gói Minimal Encapsulation for IP
Hình 27: Đóng gói Minimal Encapsulation for IP
IP Header
IP Payload Minimal forwarding header
IP Payload Modified IP Header
Cũng tương tự phương pháp đóng gói IP trong IP, nhưng phương pháp này sử dụng cho gói tin nhỏ hơn.
Các trường trong Modified IP Header.
Protocol 55 (Minimal Encapsulation for IP) Destination Address
Địa chỉ IP của điểm mở gói gói tin
Source address
Địa chỉ IP của điểm đóng gói gói tin
Total Length
Độ dài của toàn bộ gói tin bao gồm cả phần mào đầu thêm vào (minimal forwarding header) (chiều dài từ 8 đến 12 octet).
Hình 28: Minimal Encapsulation Header
Protocol
Được chép lại từ trường tương ứng của gói IP ban đầu.
Original Source Address Present (S)
0 Original Source Address không được dùng. Chiều dài của Minimal forwarding headder là 8 octets.
Header Checksum Protocol Resserved
Original Destination Address (if present) Original Source Address
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
1 Original Source Address được sử dụng. Chiều dài của Minimal forwarding headder là 12 octets
Reserced
Được đặt bằng 0, sử dụng trong tương lai.
Header checksum
Phần kiểm tra tính chính xác của toàn bộ gói kể cả phần mào đầu được thêm vào (minimal forwarding header).
Original Destination Address
Được chép lại từđịa chỉđích của gói tin IP gốc.
Original Source Address
Được chép lại từđịa chỉ nguồn của gói tin IP gốc nếu bit S =1.
c) Phương pháp đóng gói GRE ( Generic Routing Encapsulation )
Cả hai phương pháp đóng gói đã trình bày ở trên đều có những ưu nhược
điểm cụ thể, tuy nhiên một phương pháp đóng gói khác có thể khắc phục được những nhược điểm kể trên là phương pháp đóng gói GRE. Phương pháp đóng gói GRE thực hiện tốt quá trình đóng gói gói tin của giao thức A gửi qua một giao thức B nào đó.
Delivery Header GRE Header Payload packet
Checksum Present (bit 0)
Nếu bit này bằng 1 thì các trường Checksum và Reserved1 chứa thông tin và ngược lại.
Reserved 0
Bên nhận sẽ huỷ gói tin nhận được nếu các bit từ 1-5 của trường này khác 0 (trừ khi bên nhận tuân theo RFC 1701 khuyến nghị về GRE trước đây ). Các bit từ 6 - 12 được đặt bằng 0 và để dùng trong tương lai.
Version Number
Giá trị bằng 0.
Protocol type
Trường này chứa giá trị xác định giao thức được sử dụng của gói tin trong phần tải tin (payload).
Checksum
Giá trị 16 bit là kết quả của việc cộng modulo 2 các đơn vị 16 bit của GRE header và phần tải tin. Giá trị của Checksum khi đưa vào tính bằng 0.
Reserved1 Đang nghiên cứu 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Protocol Type Reserved0 Ver C
2.8. Kết luận chương
Mobile IP là một chuẩn định nghĩa bởi IETF. Mobile IP cho phép người dùng giữ nguyên địa chỉ IP trong khi vẫn giữ kết nối và duy trì các ứng dụng trong khi di chuyển giữa các mạng IP. Mobile IP đã giúp loại bỏ việc ngắt kết nối, và kết nối lại khi điểm kết nối vào mạng thay đổi.
Chương 3 GIẢI PHÁP BẢO MẬT CHO MOBILE IP
3.1. Nguy cơ an ninh và bảo mật trong Mobile IP
3.1.1. Các yêu cầu bảo mật thông tin trên mạng
Các mục tiêu chính của bảo mật thông tin trong mạng bao gồm:
- Bí mật dữ liệu (Data confidentiality): chỉ cho phép những người có quyền mới được truy cập thông tin;
- Toàn vẹn dữ liệu (Data integrity): những người không được phép thì