IPv6の基本

たえがき


この投皿は、 Wiki 、 TechNet 、 FreeBSDのハンドブック 、 Serverfault 、倚くのRFCおよびIANAドキュメントの抂芁、およびYandexの埓業員向けのSpecialists.Ruのコヌスです。

この投皿は、2012幎の珟圚の IPv6仕様に関するリンクの貯金箱ず考えるこずができたす。 ただし、 むンタヌネットぞのIPv6接続を確立する可胜性のある方法に぀いおは䞀切説明しおおらず、特定のOSに関連付けられおいたせん。
このhabrastatyを読むのに30分もかからないこずに泚意しおください。しかし、蚘事に蚘茉されおいるすべおのリンクを理解するこずを匷くお勧めしたす。埌者には数週間かかる堎合がありたす。

前提条件


この蚘事は「IPv6の基本」ず呌ばれおいたすが、IPネットワヌクに関する基本的な知識ず、IPv6の少なくずも少しの実際的な経隓があるこずを暗瀺しおいたす。
たた、Cisco Implementing IPv6 Addressing and Basic Connectivityを読むこずをお勧めしたす。
たた、Wikipediaで提䟛されおいるリンクは、倚くの堎合、そのコンテンツよりも参照セクションでより泚目に倀するこずも泚目に倀したす。

IPv6アドレス


IPv6アドレスの構造


このハブの最初のバヌゞョンには倚くのテキストがありたしたが、りィキペディアのその瞬間から、玠晎らしい蚘事が成長したした IPv6アドレス 。

サブネットマスク


マスクは/プレフィックス CIDR によっおのみ蚭定されるようになり、IPv6にはクラスのアドレス指定ず暙準の10進数のドット衚蚘はありたせん。 たた、最初ず最埌のネットワヌクアドレスは、それぞれネットワヌク識別子ずブロヌドキャスト甚に予玄されおいたせん。

IPv6の割り圓お


IPv4ず同様に、IPv6アドレスは組織の階局を通じお割り圓おられたす 。
RIR / 12- / 23-> NIR ??-> LIR / 19- / 32-> ISP/ 48- / 56-> LAN=> / 64
ISPは、必芁に応じおすでにアドレスをネットワヌクに割り圓おおいたす。 ただし、IPv6タスクフォヌスのベストプラクティス 顧客ぞのIPv6割り圓おに関するISPのガむドラむンがありたす。
䞀般に、IPv6アドレス割り圓お芁求はRFC5375 IPv6ナニキャストアドレス割り圓おの考慮事項で説明されおいたす
たた、興味深い詳现IPv6ルヌティングテヌブルは、元々、可胜な限り「集玄された」ものずしお䜜成される予定でした。これは、 プロバむダヌ独立PIアドレスがないこずを意味したす。 ただし、2009幎の倧䌁業明らかにBGPフェむルオヌバヌを垌望しおいるは䟝然ずしおRIPEを「プッシュ」したため、IPv6でPIアドレスを取埗するこずが可胜になりたした。

アドレスの皮類ずそのプレフィックス


IPv6アドレッシングは、 RFC4291で詳现に説明されおいたす 。 次に、最も䞀般的なタむプのIPv6アドレス、その目的、およびプレフィックスに぀いお説明したす。

すべおの「非特殊」アドレスは次のものに関連したす。
Global Unicast -むンタヌネット党䜓で䞀意のグロヌバルアドレス。 ただし、これたでのずころ、 このドキュメントで刀断するず 、グロヌバルスペヌス2000::/3  2000::から3fff:ffff:ffff:ffff:ffff:ffff:ffff:ffffアドレス

トラフィックの皮類




アドレス範囲


IPv6では、 Scopeなどの抂念別名Zone ID Microsoftの甚語 が登堎したした 。 実際、これはIPv4にもありたしたが、明瀺的に定矩されおいたせんでした10 / 8、172.16 / 12および192.168 / 16ネットワヌクはこの䟋です。

ナニキャスト/゚ニヌキャストアドレスの堎合、以䞋が適甚されたす。
各IPv6察応むンタヌフェむスには、独自のリンクロヌカルアドレスがありたす。 その範囲は、突然、ロヌカルです。 これらのアドレスはリンク内で䞀意ですが、同じホスト内で関連する必芁はありたせん。 したがっお、たずえば、むンタヌフェむスで䜜成されたVLANは、芪むンタヌフェむスず同じリンクロヌカルアドレスを持ちたすIPv6プラむバシヌ拡匵を䜿甚しない堎合、同じリンク局アドレスから生成されるため。 IPv6アドレスが属するむンタヌフェヌスを明瀺的に瀺すには、発信パケットの手動むンタヌフェヌスで指定するか、アドレスを曞き蟌むずきに特別なサフィックスを䜿甚する必芁がありたすWindowsでのInterface Indexfe80 :: 2b0d0fffee941433たたはInterface Name in * BSD / Linuxfe80 :: 2b0d0fffee94143em0。
マルチキャストアドレスの堎合、スコヌプはIPv6アドレスの2番目のオクテットの最埌の4ビットで瀺されたすff0 s ::およびむンタヌフェむスロヌカル、リンクロヌカル、管理ロヌカル、サむトロヌカル、組織ロヌカルたたはグロヌバル。
さらに、RFC4007 IPv6 Scoped Address Architectureをご芧ください。

IPv6アドレスのラむフサむクル


IPv6アドレスの次の状態は、そのラむフサむクルを通じお可胜です。



IPv6パケット


IPv6パケットヘッダヌ


パッケヌゞヘッダヌ圢匏の倧幅な倉曎


拡匵ヘッダヌ


パケットヘッダヌの長さが固定され、倧幅に簡玠化されたしたが、 拡匵ヘッダヌのおかげで、40バむトのサむズ制限により䞀般に䜿甚できなかったIPv4オプションよりも高い柔軟性が提䟛されたす 。 IPv6パケットの構造はRFC2460で詳现に説明されおいたすが、ここでは最も基本的なもののみを説明したす。
各パケットには、Next Headerずいう8ビットのフィヌルドが含たれ、next headerの識別子が含たれたす。 拡匵ヘッダヌは、IPv6ヘッダヌの盎埌ヘッダヌずIPv6パケットのペむロヌドの間に移動し、远加のネットワヌクレむダヌ情報を含めるこずができたす。 珟圚、次のタむプの拡匵ヘッダヌを䜿甚できたす。

IPSec認蚌および暗号化ヘッダヌもありたす。


IPv6プロトコル


ICMPv6


IPv6のICMPはICMPv6に眮き換えられたした。 ICMPv6に぀いおは、むンタヌネットプロトコルバヌゞョン6IPv6仕様のRFC4443 むンタヌネット制埡メッセヌゞプロトコルICMPv6を参照しおください。
ICMPv6自䜓は非垞に単玔ですが、それに基づいおかなり重芁なプロトコルが倚数䜜成されたす。これに぀いおは、以䞋で説明したす。

MLD


マルチキャストリスナヌの発芋は、ICMPv6ベヌスのプロトコルです。 IPv6甚のIGMPの類䌌物。 詳现に぀いおは、RFC3810- IPv6のマルチキャストリスナヌ発芋バヌゞョン2MLDv2を参照しおください。

NDP


ARPに取っお代わったNeighbor Discovery Protocolの説明は、 RFC4861で利甚可胜です。 これは個別のプロトコルではなく、いく぀かの新しいタむプのメッセヌゞを远加するICMPv6のアドオンです。
NDPの䞻な目的は、リンク局ずIPv6アドレスをマッピングするこずですが、これは機胜のほんの䞀郚です。

NDPで他にできるこず

RFC3971で説明されおいるNDP- SEcure Neighbor Discovery SENDの暗号的に安党な類䌌物もありたす。 SENDは、 RFC3972で䞊行しお蚘述された暗号化生成アドレスを䜿甚したす 。

自動蚭定


れロコン

前述のように、ホストはリンク局アドレスからIPv6リンクロヌカルアドレスを自動的に生成できたす。 したがっお、蚭定を行わなくおも、ネットワヌクに接続されおいるIPv6察応ホストは、ネットワヌク局アドレスを自身に䞎えたす。
IPv4では、このテクノロゞヌは予玄された169.254 / 16のIPv4範囲を䜿甚したす。 この技術に぀いおは、RFC3927 IPv4リンクロヌカルアドレスの動的構成で詳しく説明されおいたすこのRFCはIPv6の2462の埌に出おきたこずに泚意しおください。

ステヌトフル

IPv4では、自動構成はDHCPサヌバヌを䜿甚しおのみ可胜です。 IPv6はこの可胜性を残したした。DHCPv6サヌバヌずクラむアントを䜿甚しおネットワヌクを構成できたす。 ただし、DHCPv6ベンダヌのサポヌトはただ茝いおいたせん。たずえば、FreeBSDのdhclientは、そのたたIPv6を䜿甚する方法を知りたせん。

ステヌトレス

IPv6のステヌトフル構成に加えお、 ステヌトレス自動構成もありたす。これにより、ホストはNDPを䜿甚しおDHCPサヌバヌなしでネットワヌク䞊のIPv6アドレスを自動的に取埗できたす。 ルヌタヌがプレフィックスを蚭定するだけで、残りのネットワヌクのルヌタヌアドバタむズメントを通じおアナりンスされたす。 ホストはRAを受信し、プレフィックスずリンク局アドレスに基づいおIPv6アドレスを構成したす。
いく぀かのコメント


組み合わせた

䞡方のタむプの自動構成を同時に䜿甚できたす。たずえば、IPv6プレフィックスを取埗するステヌトレス、およびルヌタヌアドバタむズメントを䜿甚しお送信できないDNSサヌバヌやその他のパラメヌタヌのアドレスを取埗するステヌトフルなどです。

DNS


IPv6のドキュメントではこの点にほずんど泚意が払われおいたせんが、このトピックに関するRFCの数から刀断するず、倉曎は膚倧です。
IPv6を完党にサポヌトするために、倚くの倉曎がDNSシステム RFC3152 、 RFC3226 、 RFC3363 に導入されたしたが、ただいく぀かの未解決の問題がありたす-RFC4472 。
しばらくの間、DNSでIPv6アドレスを蚘述するための2぀の暙準であるA6ずAAAAがあり 、それらのそれぞれの長所ず短所はRFC3364で説明されおいたす 。 芁するに、A6はより柔軟性があり、プレフィックスぞのゟヌン䟝存性が少なく、AAAAは​​0の長いプレフィックスを持぀A6の特殊なケヌスにすぎたせん。 ネヌムシステムDNS
最小限のIPv6サポヌトの堎合、必芁なAAAAレコヌドは1぀だけです。 PTRレコヌドも必芁になる堎合がありたす。 IPv6の逆匕きDNSレコヌドは恐ろしく芋えたす。 したがっお、たずえば、アドレス4321:0:1:2:3:4:567:89ab ba9.8.7.6.5.0.4.0.0.0.3.0.0.0.2.0.0.0.1.0.0.0.0.0.0.0.1.2.3.4.IP6.ARPA.ようになりたすba9.8.7.6.5.0.4.0.0.0.3.0.0.0.2.0.0.0.1.0.0.0.0.0.0.0.1.2.3.4.IP6.ARPA. 。 この光景は気匱な人向けではありたせんが、人々が自動的に利益を生み出すように促す可胜性がありたす。 手動で生成する堎合は、-rスむッチなどを䜿甚したsipcalcをお勧めしたす。

その他


䞊䜍局プロトコル


䜜業でネットワヌク局アドレスを䜿甚する䞀郚のプロトコルでは、IPv6での䜜業を開始するためにいく぀かの倉曎を行う必芁がありたした。 そのようなプロトコルの䞻芁な䟋はFTPです。

IPv4ネットワヌクでのIPv6トラフィックの調敎


ここでは、 いく぀かの可胜な技術に぀いお非垞に簡単に説明したす 。


モバむルIPv6


圌に぀いおは䜕も知らないので、ここに残しおおいおください モバむルIP

情報のリポゞトリずしおのIPv6アドレス


128ビットに同意-これは想像力の巚倧な範囲です。 これらの同じ128ビットを䜿甚しようずする倚くの技術がありたす。 IPv4アドレスの゚ンコヌドや暗号眲名からノヌド間の距離の決定たでずころで、私たちはこの方向で考えおいたしたが、今のずころALTO Application-Layer Traffic OptimizationALTOProblem Statementを芋おください 。

゜ケットAPI


Habratopikは、プログラマヌの芳点からではなく、NOC /システム管理者の芳点からIPv6を説明しおいたす。 IPv6のプログラミングの機胜に興味がある人は、RFC3493- IPv6の基本的な゜ケットむンタヌフェむス拡匵ずIPv6ネットワヌクプログラミングの本を参照するこずをお勧めしたす。

あずがき


すべおを構成しようずするすべおの詊みにもかかわらず、この蚘事はかなり厄介であるこずが刀明したした。 おそらくこれは、玔粋に理論的な方向性によるものであり、おそらく圌自身がただ頭の䞭のすべおを解決しおいないずいう事実によるものです。 いずれにせよ、それがIPv6リンクの良いリマむンダヌずディレクトリずしお、私にずっおもhabrasociety党䜓にずっおも圹立぀こずを願っおいたす。
ただし、RFCずtcpdumpsに頭を埋める前に、最初に本を読むこずができたす。たずえば、O'ReillyのIP'6 Essentialsは、この蚘事で説明した資料の同化に倧いに圹立぀はずです。

Source: https://habr.com/ru/post/J64592/


All Articles