Đề tài Các vấn đề của địa chỉ IPv4 và tổng quan về địa chỉ IPv6

Mục lục

Danh mục các chữ viết tắt

Danh mục các từ khoá

Danh mục các bảng và hình vẽ

Lời nói đầu

Chương 1 : Các vấn đề của địa chỉ IPv4

1. Địa chỉ IPv4

2. Các vấn đề của IPv4

3. Các ưu điểm mà IPv6 cung cấp

Chương 2 : Tổng quan về địa chỉ IPv6

 

1. Cấu trúc và các loại địa chỉ IPv6

1.1. Cấu trúc

1.2. Cấp phát địa chỉ IPv6

1.3. Các loại địa chỉ IPv6

1.1.1. Địa chỉ unicast

1.1.2. Địa chỉ Anycast21

1.1.3. Địa chỉ Multicast

1.1.4. Các dạng địa chỉ IPv6 khác

2. Cấu trúc trường header của gói tin IPv6

2.1. Cấu trúc Header của gói tin IPv6

2.2. Extension header

3. ICMPv6

3.1. Cấu trúc

3.2. Một số loại bản tin ICMP

3.3. Quá trình phân mảnh và xác định MTU

4. Neighbour discoverry

4.1. Các bản tin ICMP sử dụng trong neighbour discovery

4.2. Bản tin Router Solicitation

4.3. Một số chức năng mà ND cung cấp

5. Autoconfiguration

5.1. Stateful và Stateless autoconfiguration

5.2. Router và network renumbering

6. Định tuyến trong IPv6

6.1. Distance vector

6.2. Link state

6.3. RIP và RIPng

6.4. OSPF và OSPFn

7. Security trong IPv6

7.1. Các mode hoạt động

7.2. Hoạt động

 

doc43 trang | Chia sẻ: lethao | Lượt xem: 5255 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đề tài Các vấn đề của địa chỉ IPv4 và tổng quan về địa chỉ IPv6, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ching. CPU sẽ phải kiểm tra mọi gói tin để xác định nó có phải translate gói tin đó hay ko? Và sau đó thay đổi IP header thậm chí cả TCP header. 1 nhược điểm lớn nữa là khi ta sử dụng NAT, ta ko có khả năng kiểm tra nguồn gốc của địa chỉ IP trong các kết nối end-to-end. Rất khó để tìm ra dấu vết của gói tin đã trải qua nhiều lần thay đổi địa chỉ qua nhiều lần NAT. NAT khiến cho 1 số ứng dụng sử dụng địa chỉ IP ko làm việc do nó giấu địa chỉ IP. Các ứng dụng sử dụng địa chỉ vật lý mà ko sử dụng tên miền sẽ ko thế tới được địa chỉ đích mà địa chỉ này đã bị translate qua NAT. NAT hỗ trợ TCP/UDP tuy nhiên nó ko cho phép các địa chỉ đích hay nguồn của các ứng dụng truyền dữ liệu như HTTP, TFTP, Telnet. Các ứng dụng mà NAT hỗ trợ : ICMP, FTP, NetBIOS over TCP/IP, DNS, Real Audio … Định tuyến Các Router quyết định đường đi của gói tin. Các giao thức định tuyến sẽ sử dụng các phương pháp động để duy trì các thông tin này. Tuy nhiên các gói tin có địa chỉ đích ở trên đường internet backbone phải được định tuyến qua các Router nondefault sử dụng giao thức định tuyến BGP. Các Router này phải duy trì 1 list tất cả các tuyến trên Internet, Routing Information Base(RIB). Mỗi thành phần trong RIB là 1 tuyến. Theo sự phát triển của Internet, kích thước của RIB ngày càng lớn và trở nên qua phức tạp để tính toán. Thiết lập cấu hình cho các thiết bị phức tạp Tất cả các thiết bị IPv4 đều phải được cấu hình bằng tay hoăặccấu hình theo kiểu statefull (DHCP). Với sự phát triển của Internet hiện nay, ngày càng có nhiều thiết bị sử dụng địa chỉ IP, chúng ta cần phải có 1 cơ chế cấu hình tự động và đơn giản hơn. Vấn đề end-to-end 2 điểm đầu cuối có thể hoạt động với nhau mà ko cần bít về đường truyền trung gian. Điều này cho phép tầng ứng dụng hoạt động 1 cách đơn giản hơn. Tuy nhiên do việc sử dụng các ko gian địa chỉ private và NAT khiến cho IPsec ko thể áp dụng. IPsec là một thức đảm bảo security ở tầng network. Ngoài ra, ko phải ứng dụng nào cũng chạy trên NAT. NAT hỗ trợ TCP/UDP tuy nhiên nó ko cho phép các địa chỉ đích hay nguồn của các ứng dụng truyền dữ liệu như HTTP, TFTP, Telnet. Các ứng dụng mà NAT hỗ trợ : ICMP, FTP, NetBIOS over TCP/IP, DNS, Real Audio Các ưu điểm mà IPv6 cung cấp Như đã nói ở trên, IPv4 có khá nhiều nhược điểm, trong đó quan trọng nhất là việc không gian địa chỉ IPv4 đang cạn kiệt. Điều này dẫn đến tất yếu phải ra đời một thế hệ địa chỉ mới giải quyết được những nhược điểm của IPv4, đó là IPv6. Thế hệ địa chỉ IPv6 ko những giải quyết được những vấn đề của IPv4 mà còn cung cấp thêm 1 số ưu điểm : Không gian địa chỉ lớn Khả năng mở rộng về định tuyến Hỗ trợ end to end dễ dàng hơn Ko có phải phân mảnh, ko cần trường header checksum. Security : do IPv6 hỗ trợ IPsec, nó làm cho các node IPv6 trở nên an toàn hơn(thực ra IPsec có thể hoạt đọng được với cả IPv4 và v6. Autoconfiguration : IPv4 cung cấp 2 cơ chế để config 1 node. Cấu hình tĩnh thì ko cho phép thay đổi theo thời gian, trong khi cấu hình động cho phép một node request thông tin cấu hình và thông tin đó có thể thay đổi theo từng phiên. Cấu hình động trong IPv4 liên quan đến stateful autoconfiguration bởi vì thỉnh thoảng các thông tin cấu hình cần được lưu lại(địa chỉ MAC). IPv6 thêm vào 1 đặc điểm nũa đó là stateless autoconfiguration cho phép kết nối vào mạng mà ko cần contact với server. Mobility : cho phép hỗ trợ các node mobile IP Hoạt động : trường IPv4 header làm thay đổi kích thước của gói tin IP và thường bị bỏ đi ko tính đến. Do các Router thường chuyển hướng hợac từ chối các gói khi nó busy. Đây chính là lý do ta ko triển khai IPsec trên nền IPv4. Các Router IPv6 hoạt động khác giựa trên cách xử lý khác đối với địa chỉ IP và các tuyến Cost : giảm gia thành về công tác quản lý, tăng đô an ninh, hoạt động tốt hơn, cần ít tiền hơn để đăng ký địa chỉ IP. Các chi phí này sẽ cân bằng chi phí cho việc chuyển từ IPv4 sang IPv6. Chương 2 : Tổng quan về địa chỉ IPv6 Cấu trúc và các loại địa chỉ IPv6 Cấu trúc Địa chỉ IPv6 có chiều dài 128 bits, nên vấn đề nhớ địa chỉ là hết sức khó khăn. Hình 2.1 : So sánh ko gian địa chỉ IPv4 và IPv6 Người ta quy ước viết 128 bits thành 8 nhóm, mỗi nhóm 2 bytes mỗi byte biểu diễn bằng 2 số hệ 16, mỗi nhóm ngăn cách nhau bởi dấu “:” Hình 2.2 : 1 số VD viết địa chỉ IPv6 Quy tắc rút gọn : Trong 1 địa chỉ, 1 nhóm liên tiếp các số 0 có thể thay thế bằng “::”. Quy tắc rút gọn này chỉ được phép sử dụng 1 lần với 1 địa chỉ Ngoài ra, còn có thể viết các địa chỉ theo các tiền tố (prefix), là các bit cao của địa chỉ IPv6, điều này có lợi cho việc định tuyến VD : FEDC:BA98:7600::/40 Cấp phát địa chỉ IPv6 Cấp phát Các bit đầu Tỷ lệ với toàn bộ không gian Unassigned 0000 0000 1/256 Unassigned 0000 0001 1/256 Các địa chỉ NSAP 0000 001 1/128 Unassigned 0000 01 1/64 Unassigned 0000 1 1/32 Unassigned 0001 1/16 Các địa chỉ Global Unicast 001 1/8 Unassigned 010 1/8 Unassigned 011 1/8 Unassigned 100 1/8 Unassigned 101 1/8 Unassigned 110 1/8 Unassigned 1110 1/16 Unassigned 1111 0 1/32 Unassigned 1111 10 1/64 Unassigned 1111 110 1/128 Unassigned 1111 1110 0 1/512 Địa chỉ Link-Local Unicast 1111 1110 10 1/1024 Địa chỉ Site-Local Unicast 1111 1110 11 1/1024 Địa chỉ Multicast 1111 1111 1/256 Bảng 2.1 : Cấp phát địa chỉ IPv6 Ta có thể thấy, mới chỉ có 15% không gian địa chỉ được sử dụng trong giai đoạn này, còn lại 85% được để dự trữ cho tương lai. Có 2 cơ chế cấp phát là : Cấp phát theo nhà cung cấp Địa chỉ IP sẽ có các trường ID của các nhà cung cấp TLA ID : định danh nhà cung cấp cao nhất trong hệ thống các nhà cung cấp dịch vụ NLA ID : định danh nhà cung cấp tiếp theo SLA ID : định danh các site của khách hàng cuối Các TLA là các nhà cung cấp cao nhất. Các NLA là các ISP cần phải xin cấp giá trị NLA ID của mình thông qua các TLA. Có 1 số phưoơg pháp xin cấp giá trị NLA ID như sau : Xin cấp qua 6bone community : đây là mạng thử nghiệm IPv6 trên toàn cầu. Khi thoả mãn 1 số đk ISP sẽ được cấp phát IP Xin cấp qua RIP Giả lập địa chỉ IPv4 vào IPv6 : phương pháp này thuận lợi cho việc thử nghiệm IPv6 trên nền IPv4. 32 bits cuối sẽ là địa chỉ IPv4, còn TLA ID có dạng 2002::/16 Với 1 end-user-site sau khi xin địa chỉ sẽ được cấp phát địa chỉ và các TLA ID, NLA ID rồi gán giá trị SLA ID để định danh các site trong tổ chức. Tuy nhiên, với phương pháp này sẽ ko tối ưu với các tổ chức lớn trải trên một khu vực địa lý rộng với nhiều chi nhánh mà một số trong các chi nhánh lại sử dụng dịch vụ của các nhà cung cấp khác nhau. Cấp phát giựa trên vị trí địa lý : Các địa chỉ được cấp phát giựa trên khu vực địa lý và các nhà cung cấp chỉ cần duy trì các tuyến bên ngoài để liên kết với các tuyến của họ. Tuy nhiên, các nhà cung cấp ko thích phương pháp này bởi nó làm phức tạp hoá thêm quá trình quản lý địa chỉ. Do sự phát triển của công nghệ các khó khăn trong việc cấp phát địa chỉ theo nhà cung cấp đã được giải quyết. Việc cấp phát địa chỉ theo vị trí địa lý chỉ còn đựoc phát triển nhằm cho những mục đích automatic và dynamic configuration bao gồm cả việc tự động đánh lại địa chỉ toàn mạng khi ISP thay đổi. Các loại địa chỉ IPv6 Địa chỉ unicast : Được sử dụng để phân biệt các host đơn lẻ trên một mạng. Bao gồm 3 loại địa chỉ : Global : được dùng để định dạng các giao diện, cho phép thực hiện kết nối các host trong mạng IPv6 toàn cầu. Nó giống như địa chỉ IPv4 định danh 1 host trong mạng Internet hiện nay. Link local : nhận dạng đường kết nối nội bộ, ko được đưa vào định tuyến. Site local : nhận dạng trong phạm vi nội bộ, có thể có nhiều nhóm. Global unicast Hình 2.3 : Cấu trúc địa chỉ Global unicast FP=001 : định dạng prefix với địa chỉ global unicast TLA ID : định danh nhà cung cấp cao nhất trong hệ thống các nhà cung cấp dịch vụ RES : chưa sử dụng NLA ID : định danh nhà cung cấp tiếp theo SLA ID : định danh các site của khách hàng cuối Interface ID : được định danh theo chuẩn EUI-64. Tuỳ thuộc vào chuẩn các giao tiếp khác nhau mà có địa chỉ interface khác nhau Như vậy địa chỉ global unicast được thiết kế phân cấp : 48 bits public topology 16 bits site topology 64 bits giao diện Hình 2.4 : cấu trúc phân cấp của điịachỉ unicast Local unicast Địa chỉ local unicast lại được chia làm 2 loại : Link local : được sử dụng để đặt địa chỉ cho các kết nối đơn Site local : được dùng để đặt địa chỉ cho các interface trong 1 site Site local Cấu trúc địa chỉ site local unicast Hình 2.5 : Cấu trúc địa chỉ site local Quy tắc định tuyến Router ko thể chuyên các gói tin có địa chỉ nguồn hay đích là địa chỉ site local unicast ra ngoài mạng đó Các địa chỉ site local ko thể chọn đường trên toàn bộ internet. Chúng chỉ có thể dùng chuyển đổi giữa 2 chặng trên cùng 1 site Link local Hình 2.6 : Gán địa chỉ link local Cấu trúc địa chỉ link local Hình 2.7 : Cấu trúc địa chỉ link local Địa chỉ link local ko tham gia định tuyến Hình 2.8 : gán đia chỉ trong 1 link Địa chỉ Anycast Được gán cho 1 nhóm các giao diện và các gói tin được gửi đến địa chỉ anycast sẽ được chuyển đến giao diện gần nhất có địa chỉ này. Về mặt cấu trúc, địa chỉ anycast ko phân biêt với dịa chỉ unicast, khi địa chỉ unicast được gán cho nhiều giao diện nó sẽ trở thành anycast Mục đích của địa chỉ anycast là để hỗ trợ những tổ chức có cấu trúc mạng phân cấp. Khi đó địa chỉ anycast được gán cho các Router mà các Router này được chia thành các vùng. Khi 1 packet đến Router cao nhất nó sẽ được chuyển đến đồng thới các Router trong đoạn Hạn chế của địa chỉ anycast Ko được sử dụng là địa chỉ nguồn của 1 gói tin IPv6 Ko được gán cho 1 host IPv6, chỉ gán cho Router Địa chỉ anycast đặc biệt dùng để gán cho 1 subnet Hình 2.9 : cấu trúc địa chỉ anycast dùng để gán cho 1 subnet địa chỉ này được sử dụng cho những giao diện cần giao tiếp đồng thời với 1 tập các Router trên mạng Địa chỉ Multicast Được dùng để gán cho 1 tập các giao diện. Một gói tin có địa chỉ đích là multicast sẽ được gửi đến tất cả các giao diện có địa chỉ multicast này Cấu trúc địa chỉ multicast Hình 2.10 : cấu trúc địa chỉ multicast Ý nghĩa các trường : 8 bit đầu tiên của địa chỉ 11111111 : định nghĩa cho địa chỉ multicast. bit tiếp theo của địa chỉ multicast là các bit cờ (flag) 3 bít đầu ko dùng đến. Bit cờ thứ tư được biết đến như một bit nốt đệm. Nhiệm vụ của nó là để biểu thị xem địa chỉ đó là một địa chỉ tạm thời hay thường xuyên. Nếu địa chỉ đó là địa chỉ thường xuyên thì bit này sẽ được gán bằng 0 còn ngược lại nó sẽ được gán bằng 1. 4 bits tiếp theo là ID scope : dung để giới hạn phạm vi nhóm địa chỉ multicast Bảng 2.2 : Trường ID scope 112 bit còn lại được sử dụng cho nhóm ID. Kích thước của nhóm ID cho phép các địa chỉ multicast dùng hết 1/256 phần không gian địa chỉ của IPv6. Các dạng địa chỉ IPv6 khác Ngoài 3 dạng địa chỉ trên, IPv6 còn quy định 1 số loại địa chỉ đặc biệt khác : Địa chỉ ko xác định ::/128 : địa chỉ này ko được gán cho interface nào. Host khi mới khởi tạo có thể sử dụng địa chỉ này như địa chỉ nguồn của nó trước khi nó có địa chỉ. Địa chỉ loopback 0:0:0:0:0:0:0:1 : một node có thể sử dụng địa chỉ này để gửi gói tin IP cho chính nó. Nó ko được sử dụng như địa chỉ nguồn Địa chỉ IPv4 trong IPv6 Hình 2.11 : Cấu trúc địa chỉ IPv4 trong IPv6 32 bit thấp sẽ là địa chỉ IPv4, 96 bits cao gán bằng 0 Cấu trúc gói tin IPv6 Cấu trúc gói tin IPv6 có dạng như sau : Hình 2.12 : Cấu trúc gói tin IPv6 Header của gói tin IPv6 bao gồm 8 trường (40bytes) so với IPv4 có 12 trường và dài 20 bytes (nếu ko có trường option) hoặc 60 bytes (nếu có trường option). Do cấu trúc của trường header của IPv6 đơn giản hơn nên việc xử lý thông tin sẽ nhanh hơn. Header đơn giản hơn là do sự thay đổi của 1 số phương thức hoạt động Header có cùng kích thước nên bỏ trường header length Quá trình fragmentation chỉ do source node thực hiện nên các Router ko tham gia vào quá trình fragmentation → trường fragmentation ko cần thiết Tuy nhiên quá trình này ko ảnh hưởng đến sự tin cậy của quá trình truyền gói tin Extension header : IPv6 extenssion header là một cơ chế mà bằng cách đó nhưng thông tin của lớp internet được mã hoá trong những header riêng biệt có thể được để trong header của IPv6 và các header của các lớp trên của cùng 1 gói tin Cấu trúc Header của gói tin IPv6 Hình 2.13 : So sánh header của gói tin IPv4 và IPv6 Các trường trong header của gói tin IPv4 Các trường trong header của gói tin IPv6 Version : đều là 4 bits ở cả IPv6 và v4. Trường này phải có ở cả 2 version để IPv6 có thể cùng tồn tại với IPv4 Header length : ko có ở IPv6 do header của các gói tin IPv6 có cùng kích thước, IPv4 cần trường này do kích thước header của nó có thể thay đổi do có thêm trường option Type of service/Differentiated Services : trường DS được sử dụng ở cả IPv4 và v6 bao gồm 6 bits để chỉ ra cách mà gói tin được xử lý ở Router để đảm bảo QoS Datagram length : trở thành trường payload length ở IPv6. Ở IPv4 trường DL chỉ ra chiều dài của toàn bộ gói dữ liệu kể cả header, R có thể tính chiều dài payload bằng cách trừ chiều dài Datagram cho chiều dài Header. Ở IPv6 thì do chiều dài header đã xác định nên chỉ cần trường PL Datagram Identification : dùng để xác địch datagram này là do gói nào fragment ra. Do IPv6 ko cho phép các node trung gian fragment gói tin nên trường này ko cần Flags : được sử dụng để cho phép fragment Fragment Offset : được sử dụng để cho phép fragment TTL : Protocol : chỉ đến giao thức ở lớp cao hơn sử dụng dữ liệu được đóng gói vào gói tin IPv4. Là trường Next header trong IPv6 chỉ ra Header checksum : Source add, Destiantion add : IP option : ko có ở IPv6 Version : Differentiated Services : 6 bit, 2 bit dùng cho tương lai, còn 4 bit chỉ priority ECN(Explicit Congestion Notification) : 2 bits Flow Label : 20 bits dùng để xác định gói tin thuộc cùng 1 luồng. Do một node có thể là nguồn của nhiều nguồn, giá trị FL và địâ chỉ nguồn xác địch duy nhất 1 luồng Payload length : 16 bits chứa 1 số nguyên chỉ ra chiều dài trường payload bằng bytes bao gồm cả trương IPv6 extension header Next header : chỉ ra giao thức nào đwocj dùng để xử lý gói tin. Hop limit : 8 bits. Mỗi lần 1 node forward gói tin nó sẽ giảm giá trị của trường này đi 1. Nếu trường này = 0, gói tin sẽ bị huỷ. Sadd, Dadd Bảng 2.3 : So sánh header của IPv4 và Ipv6 Extension header Mỗi loại của exension header được định nghĩa bởi 8 bits ở trường Next header của header trước Hình 2.14 : cấu trúc gói tin IPv6 và trường extension header Các giá trị của trường next header Next header type Value Hop-by-hop Options IPv6 Routing Fragment Authentication Destination Options Encapsulating Security Payload No next header 00 41 43 44 51 60 50 59 để tạo đường hầm IPv6 Ko có header tiếp theo header này Bảng 2.4 : Các giá trị của trường Next header Các loại extession header : Hop-by-hop : một số gói tin IPv6 được yêu cầu chỉ do node nguòn và node đích xử lý, còn lại hầu hết thì đều cần ít nhất 1 Router trung gian xử lý. Header hop-by-hop được sử dụng khi 1 trong số các option cần phải được xử lý bởi mỗi node trên đường từ nguồn đến đích Routing : cho phép node gửi 1 gói tin đến 1 hoặc nhiều Router để các Router đó xử lý và định tuyến đến đích Fragment : mặc dù IPv6 ko cho phép các Router trung gian fragment gói tin, công việc này là của các node nguồn và đích. Tuy nhiên khi node nguồn thấy rằng nó cần phải gửi gói qua đwongf truyền có MTU nhỏ hơn kích thước gói thì các node trung gian được phép fragment gói tin và gói tin có thêm trường fragment Authentication : khi sử dụng phương pháp xác thực có độ an toàn cao header này được sử dụng Destination : giới hạn chỉ những node đích nào mới xử lý những option mà gói tin mang theo. Encapsulating Security Payload : khi ta sử dung jphương pháp mã hoá có độ an toàn cao Các extension header được sắp xếp theo 1 thứ tự nhất định sau header chính để đảm bảo tất cả các thông tin optional được xử lý bởi node đích cũng như các node trung gian trong khi cùng thời gian đó cho phép các node xử lý gói tin theo thông tin optional. VD : hop-by-hop được đặt ngay sau header chính vì nó phải được xử lý bới tất cả các node trung gian Destination được đặt dưới cùng vì các node trung gian ko nhất thiết phải xử lý option này Thứ tự các extension header được khuyến cáo đưa ra trong RFC 2460 IPv6 header Hop-by-hop Destination option Routing header Fragment header Authentication header Encapsulation Security Payload header Destiantion option header Upper layer header Hop-by-hop option và Destination Option Header có thể chứa 1 hoặc nhiều option. Ko giống các IPv6 extenssion header khác chi thực hiện 1 chức năng, 2 header kia là các header tái tạo và chỉ được phân biệt bằng cách nó hoạt động Hop-by-hop : chứa các option được xử lý tại mỗi node Destination : chứa các option chỉ được xử lý tại node đích ICMPv6 Là giao thức sử dụng bản tin ICMPv6 để thông báo lỗi hoặc thu hút các đáp ứng từ 1 node để lấy thông tin cần thiết. Các ứng dụng như : ping, trace route, Path MTU Discovery, Neighbour discovery giựa trên ICMPv6. Bản tin ICMP được đóng gói trong gói tin IP và được xác địch bởi trường next header = 58 Cấu trúc Hình 2.15 : Cấu trúc bản tin ICMP Ý nghĩa các trường Type : 8 bit , chỉ ra loại bản tin ICMPv6, (0-127) : là bản tin error mess, (128-255) là bản tin thông báo Code : 8 bits phụ thuộc vào trường type Checksum : 16 bits Mess body : chứa dữ liệu Một số loại bản tin ICMP Bản tin ICMP đwocj tạo ra khi có 1 số lỗi : router ko thể gửi được gói tin, node ko thể khôi phục đwcj gói tin bị lỗi, ….Chú ý rằng khi 1 link đang tắc nghẽn node đó ko bao giờ gửi bản tin ICMP thông báo tắc nghẽn bởi điều này chỉ làm mọi thứ thêm tệ hơn. Một số phương thức khác ở tầng cao hơn sẽ được dùng để giải quyết vấn đề này. Destination unreachable : được gửi cho node nguồn khi R nhận được gói tin mà nó ko thể gửi đi đâu được. Cấu trúc bản tin Hình 2.16 : cấu trúc bản tin ICMP des unrechable Các giá trị có thể có của trường code 0 : ko có tuyến đích : R ko có tuyến đích tương ứng với địa chỉ đích của gói tin. Bản tin này chỉ được gửi với những R ko có default route 1 : communication with administratively prohibited : bản tin này đwocj gửi bởi firewall khi 1 loại traffic bị cấm đwocj gửi tới 1 host bên trong firewall 2 : chưa được gán 3 : addr unreachable : 4 : port unreachable : được tạo bởi node đích khi các tầng trên ko bít sử lý gói tin này thế nào Packet too big : được gửi cho node nguồn khi Router nhận được gói tin lớn hơn giá trị MTU của link Cấu trúc bản tin Hình 2.17 : Cấu trúc bản tin ICMP packet too big Time exceeded : Có 2 loại Khi gói tin chạy trong mạng trong khoảng thời gian quá lâu mà ko đến đích Gói tin vượt quá có thời gian phân mảnh và ghép mảnh quá lâu Cấu trúc bản tin Hình 2.18 : Cấu trúc bản tin ICMP time exceeded Các gói tin ở quá lâu trong mạng sẽ bị loại bỏ khi giá trị vượt quá giá trị hop limit. R sẽ xoá các gói tin có giá trị trường hop limit = 0 hoặc 1 và gửi bản tin ICMP về cho node nguồn 1 : hop limit vwotj quá giới hạn 0 : quá time out mà ko gửi được Bản tin này được dùng cho chức năng trace route Đầu tiên 1 bản tin được gửi đến đích vơi hop limit =1, R đầu tiên nhận được sẽ gửi lại bản tin time exceeded và node nguồn sẽ bít R đầu tiên trên đường truyền. Nguồn lại gửi bản tin thứ 2 với hop limit = 2 và R thứu 2 sẽ gửi lại bản tin time exceeded Cứ thế cho đến khi gói tin đến được đích và node nguồn sẽ có thông tin về tất cả các R trung gian Parameter problem : được gửi cho node nguồn khi có vấn đề với 1 vài phần của gới tin IPv6 hoặc trường extension header khiến cho Router ko thể xử lý và phải xoá gói tin. Cấu trúc bản tin Hình 2.19 : Cấu trúc bản tin ICMP parameter problem ICMPv6 Echo Funtion : echo request và echo reply Echo request : được gửi tới tất cả các địa chỉ valid IPv6 có thể thêm giá trị Echo req ident, seq num và một số dữ liệu. Giá trị ident và seq để phân biệt các giá trị reply khác nhau. Data là giá trị optional Khi 1 node nhận bản tin req nó phải gửi lại bản tin Echo reply với các giá trị ident, seq, và data gióng như ở bản tin Echo request Cấu trúc Hình 2.20: Echo Request Hình 2.21 : Echo reply 2 bản tin này là thành phần của lệnh Ping Quá trình phân mảnh và xác định MTU Quá trình phân mảnh Quá trình phân mảnh trong IPv6 chỉ được cho phép giữa node nguồn và đích, điều này làm đơn giản trường header và giảm các thông tin overhead cho định tuyến. Các node IPv6 có thể được phép phân mảnh nếu cần thiết sử dụng trường fragmentation tuy nhiên các Router trung gian hoặc các node khác ko được phép phân mảnh gói tin lớn hơn MTU IPv4 cho phép phân mảnh nếu gói tin chưa phân mảnh mất quá nhiều thời gian để đến đích. Các Router trung gian thực hiện việc phân mảnh có thế thay đổi header của gói tin để đến node đích có thể tái hợp các mảnh lại thành gói tin hoàn chỉnh. Sử dụng phân mảnh cho phép các node hoạt động trong các môi trường mạng khác nhau hoạt động với nhau tốt hơn. Node nguồn ko cần bít về node đích cũng như thông tin về đường truyền đến đích. Điều này làm giảm thông tin mà node nguồn cần phải lưu trữ về mạng và cho phép khả năng mở rộng cao. Tuy nhiên, phân mảnh làm thêm các header, overhead, và làm Router tốn CPU để xử lý. Có 2 cách để hạn chế phân mảnh đó là : Cách 1(đã được sử dụng ở IPv4) : path MTU discovery : Router sẽ gửi 1 gói tin có kích thước bằng MTU của link đầu tiên đến đích nếu gói tin đến link nào đó mà ở đó nó bị phân mảnh, Router phân mảnh sẽ gửi lại bản tin ICMP chỉ ra MTU của link là bao nhiêu. Quá trình cứ tiếp diễn cho đến khi R xác định được link path MTU Cách 2 : là hạn chế đến mức tối thiểu kích thước gói tin để tất cả các link đều có thể chấp nhận được IPv6 path MTU discovery IPv6 sử dụng cả 2 cách hạn chế phân mảnh trên MTU cho IPv6 được định nghĩa ở RFC 2460 là 1280 bytes Tuy nhiên IPv6 khuyến cáo nên sử dụng cơ chế MTU discovery sử dụng bit don’t fragment trong trường flag fragment để các R trung gian gửi lại bản tin ICMP error báo gói tin quá lớn Hình 2.22 : Path MTU discovery Neighbour discovery Các node IPv6 trong cùng 1 link sử dụng ND để khám phá sự tồn tại của nhau, địa chỉ tầng 3 của nhau, để tìm Router và duy trì thông tin về đường đi để xây dựng neighbour. Như vậy các giao thức liên quan như ARP ko còn cần thiết nữa Các bản tin ICMP sử dụng trong neighbour discovery ND sử dụng 1 số loại bản tin ICMP sau để thực hiện các chức năng của mình : Router solicitation : khi 1 inter bắt đầu hoạt động, host sẽ gửi Router solicitation để yêu cầu Router gửi lại Router Adv Router Adv : R sẽ thông báo sự tồn tại của nó và các thông số theo chu kỳ hoặc khi nhận được bản tin R Solic Neighbour Solicitation : được gửi bởi node để xác định địa chỉ link layer của neighbour hoặc để kt xem neighbour có reachable hay ko? Neighbour adv : trả lời lại bản tin neighbour solic Redirect : được sử dụng bởi Router để chỉ cho host first hop tốt hơn để đến đích. Bản tin Router Solicitation : Cho phép 1 node yêu cầu R gửi R adv ngay lập tức. Bằng cách này 1 node có thể ghi nhớ địa chỉ IP và địa chỉ tầng 2 của Router. Router solicitation được gửi multicast tới tất cả các Router trong bất cứ phạm vi nào của giới hạn địa chỉ đích IPv6. Tất cả các Router trong phạm vi này phải trả lời lại với bản tin Router adv. Bình thường Router sẽ gửi bản tin quảng bá này trong 1 chu kỳ nhất định và nó gửi tới tất cả các node có địa chỉ multicast. Tuy nhiên khi đáp ứng yêu cầu của host nó chỉ gửi lại cho host đã gửi bản tin Router Solicitation. Cấu trúc bản tin Router Solicitation : Hình 2.23 : Cấu trúc bản tin Router Solicitation Một số chức năng mà ND cung cấp IPv4 sử dụng ARP để ánh xạ địa chỉ IP với địa chỉ ở tầng 2, nhưng có 1 số hạn chế. ND trong IPv6 cũng có chức năng này tuy nhiên nó còn cung cấp 1 số chức năng phức tạp khác Router discovery : cung cấp cơ chế để xác địch local router Prefix discovery : Parameter discovery : cơ chế để xác định các thông số của local link network, MTU, hop limit, … Addr autoconfiguration : Addr resolution : xác định địa chỉ lớp 2 của 1 host neighbour mà chỉ bít địa chỉ IP của nó. Nexthop detemination : khi muốn gửi 1 gói tin đi, host phải xác địch địa chi để gửi. Quyết định này giựa trên địa chỉ đích của gói tin và host cần phải quyết địch gửi gói tin đến thẳng đích nếu trong cùng 1 local link hay gửi đến router nếu ko trong cùng 1 local link. Neighbour unreachable detection : hót cần cơ chế cho phép xác định neighbour của nó có reachable ko? Nếu là router thì default route động được sử dụng Duplicate addr detection : xác định địa chỉ này đã được sử dụng chưa? Redirect : Link-layer addr change : 1 node khi phát hiện địa chỉ lớp 2 của nó thay đổi có thể gửi multicast để update thông tin thay đổi này. Inbound load balancing : 1 node có nhiều địa chỉ lớp 2 trên cùng 1 inter có thể chia tải trên các inter đ

Các file đính kèm theo tài liệu này:

  • docThực tập - Tổng quan về IPv6.doc