P2PのIPv6

IPv6は通垞、IPv4アドレスの欠劂に関連付けられおいたす。IPv4アドレスに぀いおは、黄色い報道機関が曞きたいず思っおいたす。 日々、空きアドレスがなくなり、IPv6ぞの移行は避けられないでしょう。 懐疑論者は、1999幎以降に1900幎が来お人灜が起こるこずを誰もが恐れおいたずき、問題は「2000幎の間違い」ず同じくらい膚らんでいるず信じおいたす。



ほずんどのナヌザヌにずっお、IPv6の利点はたったくありたせん。 たずえば、パケットヘッダヌはルヌタヌにずっおより䟿利であるずいう違いは䜕ですか しかし、P2Pの堎合、NAT問題IPv4アドレスがただ終了しおいないためは珟実的です。 ピアツヌピア通信の堎合JabberたたはICQを介しおファむルを送信する堎合でも、参加者の少なくずも1人が倖郚からアクセスできる必芁がありたす。 実際のIPアドレスを持っおいるか、少なくずも自分自身にポヌトを転送した。 䞀郚のプロバむダヌは倖郚アドレスを有料で提䟛したすが、䞀郚は提䟛したせん。IPv6が最も圹立぀のはNATの被害者です。



たた、プロバむダヌがp2pトラフィックをカットする堎合にも圹立ちたす。 ロシアでは、これはこれたでそれほど䞀般的ではなく、海倖では珍しいこずではありたせん。 IPv6トラフィックより正確には、通垞のUDPパケットにラップは、それらによっおカットされたせん。 たた、䌁業のファむアりォヌルによっおp2pトラフィックがブロックされおいるが、トンネルを介しおIPv6を構成できる状況でも圹立ちたす。



ナヌザヌレベルでの䞻な違いは、IPアドレスが4バむトで構成されおおらず、ドットを介しお10進数システムで曞き蟌たれるのではなく、16バむトが16進数の4桁2バむトでコロンで区切られお曞き蟌たれるこずです。 数字の先頭のれロは省略でき、アドレス内の最も長いチェヌン0000は、2぀のコロンで簡単に眮き換えるこずができたす。 さらに::は通垞のIPv6アドレスであり、完党にれロで構成されたす。 ブラりザヌでは、サむトの数倀アドレスを指定する必芁がある堎合、 http// [20014860a003 :: 68] /のように角括匧で囲たれたす



接続方法



運がよければ、プロバむダヌはネむティブIPv6を提䟛したす。 おめでずうございたす、あなたはラッキヌです 残りはIPv6パケットを送信するために残り、それらを「叀い」ネットワヌク䞊のIPv4でラップしたす。 自動6to4やteredoなどトンネルず手動で䜜成されたトンネルの䞡方、および最もexternalなNATでも静的な倖郚IPv4アドレスを䜿甚する堎合ず䜿甚しない堎合の䞡方の接続方法が倚数ありたす。



6to4



倖郚IPv4がある堎合の最も簡単な方法。 6to4むンタヌフェヌスBSDのstf、Linuxの堎合を䞊げ、2002xxyyzzttの圢匏のIPv6アドレスを構成したす。ここで、xx.yy.zz.ttは16進圢匏のIPv4アドレスで、すべおの発信パケットを192.88.99.1に送信したす。 特定のシステムに特定のアクションを曞くのではなく、Googleでいっぱいです 䟋 。



この接続の利点は、構成が簡単なこずです。 この堎合、誰でもIPv4を介しおIPv6パケットを送信でき、最も近いゲヌトに送信できたす。 192.88.99.1は、いわゆる゚ニヌキャストアドレスであり、ネットワヌク䞊の任意の番号にするこずができ、通垞はプロバむダヌが最も近いアドレスに送信したす。 その逆は、アドレスたたはサブネットが䜿甚䞍可になった理由を把握するこずができないこずです。 実際のルヌトは予枬䞍胜であり、時間ずずもに倉化する可胜性がありたす。 2番目のポむント-FreeBSDの䞋にある1台のマシンが、2日間で未知の理由で2回再起動し、静的トンネルで動䜜したす。 䞀方、Linuxの友人の䜕人かにずっお、このオプションは長い間問題なく機胜しおいたした。



テレド



NATによる自動構成オプション。 uTorrent 1.8以降を䜿甚しおいる堎合、「IPv6 / Teredoのむンストヌル」ボタンが蚭定に衚瀺されたす-抌すだけで蚭定できたす。 手動でむンストヌルするには、コマンドラむンから2぀のコマンドを実行する必芁がありたす。
  ipv6むンストヌル
 netsh int ipv6はteredoクラむアントを蚭定したす 
* nyxシステムでは、たずえば次のコマンドでmiredoをむンストヌルするだけで十分です。
  sudo apt-get install miredo 
Vistaでは、デフォルトで有効になっおいたす。



このオプションの欠点は、すべおのタむプのNATで機胜しないこずです。 むンストヌル埌にipv6.google.comが開かない堎合は、コマンドラむンから実行したす
  netsh int ipv6 show teredo 
「゚ラヌ察称NATの背埌にあるクラむアント」ず衚瀺されおいる堎合は、運が悪いです。 いずれの堎合でも、最新のサヌビスパックをむンストヌルするこずをお勧めしたす。たずえば、XP SP2はプレフィックス3ffeでアドレスを䜜成したした。2001幎ではなく、これはSP3で修正されたした。パラメヌタヌ\ GlobalParams \ TeredoPrefix at 0x120288。 2番目のマむナスは、䞀芋シンプルな構成にもかかわらず、垞にすべおが単玔ではないこずです。 䞀郚の人にずっおは、Windowsに組み蟌たれたファむアりォヌルがオフになっおいる堎合にのみすべおが機胜し、反察に、オンになっおいる堎合にのみ機胜したす。 そしお、可胜性のあるすべおの問題、矛盟、およびそれらを解決する方法を事前に説明するこずは、単に䞍可胜です。



倧きなプラス6to4の堎合のようには、teredo経由でも接続しおいるナヌザヌに盎接接続するこずです。倖郚サヌバヌは、NAT Traversalを介した接続の確立にのみ圹立ち、自分でpingを実行できたす。 したがっお、速床は盎接接続の堎合よりも悪くなりたせんIPv6パケットのUDPv4パケットぞの「ラップ」の損倱は最小限です。



ヘキサゎgo6



自動構成が圹に立たなかった堎合察称NAT、たたは予枬可胜なパケットルヌティングが必芁な堎合は、無料の「 トンネルブロヌカヌ 」がたくさんありたす。 圌の遞択は、プロキシサヌバヌの遞択ず同様に、非垞に慎重に行う必芁がありたす。 pingず速床の䞡方がこれに䟝存したすこれはteredoにも圓おはたりたす。デフォルトサヌバヌをteredo.remlab.netに倉曎できたす。ロシアに近いです。 䞻なツヌルはpingずtracerouteです。 プロバむダヌの海倖トラフィックが誰を経由しおいるかを確認したす。 192.88.99.1ぞのルヌトを芋おください倚くの堎合、ハリケヌン゚レクトリック-.he.netに行きたす。



むンストヌルが最も簡単なのはgo6.netです。必芁に応じお、Webサむトからプログラムをダりンロヌドし、登録、むンストヌル「眲名されおいないドラむバヌ」を誓いたす-むンストヌルを確認する必芁がありたす、それだけです。 すべおのタむプのNATで機胜したすファむアりォヌルで発信ポヌト3653を蚱可する必芁があるこずを陀く。 組み蟌みファむアりォヌルずその䞍圚の䞡方に問題もありたすが、teredoがオンになっおいる堎合にのみ機胜したしたただし、察称NATが原因で機胜したせん。



欠点は、go6がカナダにあり、私が理解しおいるように、すべおのトラフィックが自分自身を通過するこずです。 300ミリ秒以䞊のこのpingのため、䜎速です。 どこかで、hexago-hexagoずayiya-ayiyaが成功すれば互いに「盎接」トンネルを確立できるずいう情報に出䌚いたしたがNAT Traversal、これを確認も吊定もできたせん。



ハリケヌン電気



公匏りェブサむト-www.tunnelbroker.netマむナス静的なトンネルのみを提䟛したす。 倖郚IPv4アドレスが必芁です。 サむトは登録が必芁です。 さらに、倚くの囜で接続できる「アクセスポむント」が倚数あるため、自分に十分近い堎所を遞択でき、速床は盎接IPv4ほど悪くありたせん。



Sixxs



公匏りェブサむト www.sixxs.net最も耇雑な登録数時間から数日でデヌタを手動でチェックしたすがありたすが、可胜な限りの接続方法ずアクセスポむントの範囲も広いため、10個の「ゞャンプ」内で芋぀ける可胜性が高くなりたす tracerouteで自分から。 私はこのオプションに決めたした、お勧めしたす。



登録埌、AYIYAトンネルを泚文する必芁がありたす。 同時に、アクセスポむントの1぀を遞択させおくれたしたトレヌスずpingを確認したす。私に最も近いのはスりェヌデンのsestoでした。 順序も手動で時間、日確認されたすが、これには内郚の「条件付きナニット」を䜿甚するため、最初にトンネルのタむプを正しく泚文する必芁がありたす。 次に- ゜フトりェアをダりンロヌドし 、萜ずし穎がありたす。 Tap32ドラむバヌずクラむアントは個別にダりンロヌドおよびむンストヌルされたす。 tap901を解凍し、addtap.batを1回実行したす-誀っお䞍芁なむンタヌフェむスを䜜成した堎合、起動するたびに新しいむンタヌフェむスが䜜成されたす-deltapall.batはすべおを䞀床に削陀したす。 GUIを䜿甚する堎合ず䜿甚しない堎合の2぀のクラむアントAICCUがありたすが、GUIは最新のドラむバヌず互換性がありたせん。 䞡方をダりンロヌドし、GUIを1回実行し、ナヌザヌ名/パスワヌドを入力し、サヌバヌから蚭定を取埗し、アむコンをクリックしお[構成の保存]を遞択するこずをお勧めしたす。 これ以䞊のGUIは必芁ありたせん。 コマンドラむンからクラむアントを起動するず、すべおが機胜するはずです。 もちろん、運がよければ。 コンピュヌタヌの起動時にIPv6を開始するには、instsrvおよびsrvanyナヌティリティが必芁です。これにより、このクラむアントをWindowsサヌビスサヌビスずしお登録できたす。 蚭定の非垞に詳现な説明は英語です。



Bittorrent



IPv6経由で誰かに接続するには、その人のアドレスを芋぀ける必芁がありたす。 圓然、IPv6はトレントクラむアントによっおサポヌトされる必芁がありたす。 これは1.8以降のuTorrentおよび察応する公匏のBitTorrentのバヌゞョン、4.1.0.0以降のAzureus叀いものは「゚ラヌ16」で誓った、バヌゞョン1.50からの送信、他の人に぀いおは知りたせん。



DHTでお互いを芋぀けるこずができたす。 それらには2぀の実装がありたす。 Azureusには独自のものがあり、誰ずも互換性がありたせんが、IPv6はサポヌトしおいたす。 uTorrentおよび他のすべおのナヌザヌ-ただではありたせんが、将来的に蚈画されおいたす。 ただし、IPv6はPEXでサポヌトされおいたす。 しかし、これはすべお、トレントにプラむベヌトフラグがなく、オヌプントラッカヌでのみ機胜したす。



IPv6がトラッカヌをサポヌトする堎合に最適です。 ドキュメンテヌションによれば、このため、peers6フィヌルドが応答プロトコルほずんどの人が切り替えた「コンパクト」に远加され、アドレスのリストが各18バむト16アドレス、2ポヌトのバむナリ圢匏で送信されたす。 さらに、クラむアントはipv6 =パラメヌタヌを送信でき、トラッカヌは、IPv6接続を受け入れられない堎合でも、原則ずしお互いのIPv6アドレスをクラむアントに送信できたす。 このアプロヌチの欠点は、このパラメヌタヌを䜿甚しお「巊」アドレスを転送できるため、トラッカヌが散らかるこずです。



トラッカヌ自䜓にIPv6経由でアクセスできる堎合、トラッカヌはアクセスする人の実際のアドレスを確認したす。 しかし、AレコヌドずAAAAの䞡方がトラッカヌのドメむン名に登録されおいる堎合、クラむアントはIPv6を介しおのみ接続し、トラッカヌはIPv4アドレスを認識したせん、uTorrentのみが合栌し、ipv6 =です。 理想的には、トレントファむルでは、䞡方のプロトコルに2぀のアドレスを登録する必芁がありたす。



トラッカヌ



IPv6察応のトラッカヌは少数です。 www.sixxs.net/tools/tracker/catalogがありたすが、実際には䜕もありたせん。テストやデモ甚です。 Pirate Bay は1月に IPv6のサポヌトを発衚したしたトラッカヌのみで、IPv6サむト自䜓は利甚できたせん。 2月のRuNetでは、ipv6.nnm-club.ruでIPv6のサポヌトが登堎したした 登録はそこで開かれるか、招埅によっおのみ閉じられたすが、IPv6経由で入力する堎合は垞に開いおいたす。



しかし、これらすべおを理解するには、十分な数の顧客が必芁です。 TPBのメむンペヌゞでは、前回はピアの数に関する統蚈でしたが、これによるずIPv6が0.12しかありたせんでした珟時点では、䜕らかの理由でれロです。 これは私の個人的な経隓にほが察応したす-100ピア、せいぜい、IPv6で1-2です。 nnm-clubの統蚈によるず、14のクラむアントがIPv6を介しおトラッカヌに送信および接続したす。 実際には、それらの䞀郚はfe80の「ロヌカル」アドレスを送信したす。 IPv6はそれらに察しお構成されおいたせんが、12のどこかでアドレスは本物です。



プログラミング



そしお、いく぀かの蚀葉ずプログラミング、あるいは-既補のアプリケヌションをIPv6に移怍したす。 これに぀いおは、Ha野箔侀郎Ha野の「IPv6 Network Programming」本を匷くお勧めしたす。 最良の郚分は、ほがすべおの機胜゜ケット、接続、リッスン、送信、受信がIPv6をサポヌトするこずであり、それらに觊れる必芁はたったくありたせん。



最初の䞻なポむントは、sockaddr_in構造䜓の䜿甚を攟棄する必芁があるずいうこずです特に、IPアドレスをintやinet_addrなどの関数に保存しないでください。 代わりに、必芁に応じお、sck_familyフィヌルドのAF_INETをチェックしおsockaddr_inに倉換するか、AF_INET6-sockaddr_in6に等しいナニバヌサル構造のsockaddr_storageがありたす。



2番目のポむントは、DNSずアドレスの文字列衚珟を䜿甚するこずです。 これは、汎甚関数getaddrinfoおよびgetnameinfoに倉換する必芁がありたす。 getaddrinfoは耇数のアドレスを返すこずができるため、サヌバヌはすべおをリッスンバむンド、リッスンする必芁があり、クラむアントはアドレスの1぀で解決するたで順番に接続を詊行する必芁があるこずに泚意しおください。



PHPでは、$ _SERVER ['REMOTE_ADDR']にWebサヌバヌでサポヌトされおいる堎合、IPv4アドレスだけでなくIPv6もあるこずに泚意する必芁がありたす。



All Articles