パスワードを忘れた? アカウント作成
2401242 story
エイプリルフール

IPv4延命のためにポート番号を拡張 32

ストーリー by headless
ルータにトランスレータ入れればいいんじゃね?とか冷静になったら負け 部門より
AliceYou 曰く、

IPv4が完売してそろそろ1年になろうとする4月1日、国内のキャリア、ISPなどが共同でTCP/IPのポート番号を128bitに拡張する「多段NATのための拡張ポート番号(Extended Port Numbers for NAT NAT NOT IP masquarade)」を、RFCとして提案することを発表した。概要としては、TCPおよびUDPを拡張して、ポート番号を128bit化するものである。だが、提案の背景として、キャリアで多段NATを実施するキャリアグレードNATで問題になる、ポート番号不足を補うためのものではないかと推測されている。

TCPに関しては、ヘッダのオプションフィールドに拡張されたポート番号を格納する。そのため、ヘッダ構造には変化がないものの、TCPスタックへの変更が必要となる。UDPは、ポート番号フィールドが、ソース、ディスティネーションで128bitずつ必要となるため、新たにプロトコル番号256番を割り当てたUDP-Heavyとして別のRFCで提案される予定だ。UDPはインターネットプロトコルのスタックで実装されることが多い。そのため、UDP-Heayに対応するためには、インターネットプロトコルのスタック部分の修正が必要になる。そのため、これまでのIPv4にのみ対応しているTCP/IPのスタックに対し、IPv6対応のための改修と同じくらいの修正が必要になるのではないかと予測する向きもある。同様に、アプリケーション側での対応も必要となるが、現時点では、archeやgopherなど、ナウなヤングなら知らなくてもいいプロトコルのクライアントに限られている状態だ。

発表の会見では、そうまでしてIPv4を使い続けたいのかという記者の質問に対して、

ポート番号拡張とキャリアグレードNATでIPv4はあと10年戦える。IPv4を使い続けるためなので、ポート番号拡張に対応できない古い機器がインターネットに接続できなくなることはご容赦 いただきたい

と、IPv4延命のためには全てを犠牲にする、という本末転倒な回答をする一幕もあった。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by OtakuMan (45130) on 2012年04月01日 15時52分 (#2127657) 日記

    >ナウなヤングなら知らなくてもいいプロトコルのクライアントに限られている状態だ。

    むしろ、その言い回しを知ってる世代向けじゃないか?www

    --
    通知の設定いじったから、ACだとコメントされても気づかない事が多いよ。あしからずw
  • NAT の問題 (スコア:4, おもしろおかしい)

    by ogino (1668) on 2012年04月01日 15時09分 (#2127642) 日記
    NAT の害悪の一つは、IP(L3) レベルでの End-to-End の疎通がないから新しい L4 プロトコルの普及が難しいということなんだよ。

    だから NAT 延命のために 128bit ポート番号の L4 プロトコルを普及させるには、まずは NAT をなんとかしなくちゃだめなんだ… あれ?
  • by Anonymous Coward on 2012年04月01日 15時05分 (#2127640)

    IPv6より普及するんじゃないでしょうか。

  • by Anonymous Coward on 2012年04月01日 15時00分 (#2127636)

    マジレスしようとした俺、涙。

    まぁここまでプロトコルいじっちゃうと、別のプロトコル同然だよね。
    互換性もへったくれもない。

    • 釣られてみる (スコア:3, おもしろおかしい)

      by Anonymous Coward on 2012年04月01日 15時43分 (#2127651)

      マヤ暦作った人「カレンダー数千年先まで作っときゃ充分だろーwww」
      UNIX作った人「俺のOSを2038年まで使う奴なんて居ないから充分だろーwww」
      インターネット作った人「IPアドレス42億もあれば充分だろーwww」
      お前ら歴史に学べよ。

      親コメント
      • by hjmhjm (39921) on 2012年04月01日 18時27分 (#2127703)

        インターネット作った人「IPアドレス42億もあれば充分だろーwww」

        42億をフルに使えれば、まだまだ枯渇していなかったんでしょう。
        まだ10年くらいは持続可能だったのでは。

        数に甘えて雑に割り当ててしまったのがもったいなかったんですよねえ。

        親コメント
        • Re:釣られてみる (スコア:2, 参考になる)

          by Anonymous Coward on 2012年04月01日 18時49分 (#2127708)

          雑と言うか、(今もそうした部分はあるけど)、主にルーティングの都合で大きな単位で配っていた
          歴史的PIアドレス群なんかもあるので一概にあれを雑と言って良いかはとても微妙な話だったりする。
          多分、発言の場所間違えるとタコ殴りされる可能性もある。(ルータ屋さん関係とかそうじゃないかな)

          親コメント
          • by saitoh (10803) on 2012年04月02日 11時23分 (#2127954)
            「ClassCを4つくれと申請したらクラスBを1個くれた。これじゃ困るよ。クラスC4つの方が良いのに」なんてこともあった、バックボーンルータのルーティングテーブルの大きさが大問題になっていた時代なので。まだまだ半導体メモリは高価だった。NATはおろかCIDRもない、というか、サブネット機能すらまだ導入が始まったばかりのころ。だからClassBを分割して使うことが自由自在に出来なかった時代。133.ほげ/16を日本の大学に配ったのはそんな時期ですね。
            親コメント
        • by Anonymous Coward

          >>数に甘えて雑に割り当ててしまったのがもったいなかったんですよねえ。

          IPv6でも個人に/48とかの単位で割り振ってたら、いつか同じ事になるかもしれませんね...

          • by ogino (1668) on 2012年04月01日 22時12分 (#2127775) 日記

            IPv6でも個人に/48とかの単位で割り振ってたら、いつか同じ事になるかもしれませんね...

            確かに IPv6 の「事実上無限」は過大に言われているように感じます。特に、サブネットが /64 が基本である以上、その分を差し引く必要があるのに、あまり言及されることはありません。

            でも、グローバルアドレスが 2000::/3 から e000::/3 ということを考えると、/48bit ずつ割り当てても 45bit が 7つ、つまり約 224テラ、224兆になります。たとえ今後世界人口が 100億人になって、その全員に /48 を割り当ててもまだ 0.005% 以下しか割り当てられてない、ということになりそうです。

            # あまり計算に自信はありませんが…

            親コメント
            • by ogino (1668) on 2012年04月01日 22時25分 (#2127778) 日記

              すみません、2000::/3 から e000::/3 がグローバルアドレスというのは多分間違いです。

              ただ 2000::/3 だけで考えても /48 が 32テラ、32兆ありますから、100億人に /48 を割り当てても 0.03%強です。よって個人に割り振るのが問題ということはないはずです。

              親コメント
        • by Anonymous Coward

          本気で事細かに割り当ててたらルーティングテーブルが爆発するのだよ

      • by saitoh (10803) on 2012年04月02日 11時17分 (#2127951)
        軽くて小さいプロトコルだったからIPは生き残ったわけで、いきなり最初から(たとえば)1024ビットアドレスとか(プロトコル処理が重い)可変長アドレスで始めてたら、接続ホスト数が数億に届くどころか,他のプロトコルに負けてさっさと絶滅していたでしょうね。56kbps専用線が速いほうで9600bps SLIPがざらだった時代なんですから。
        親コメント
      • by Anonymous Coward on 2012年04月01日 16時13分 (#2127670)

        SDメモリカードの規格作った人にも言ってやって

        親コメント
        • by shesee (27226) on 2012年04月01日 19時11分 (#2127716) 日記
          そこはMemoryStickの人じゃ無いかな。MMCと互換性あって、SPIでもアクセス出来て、サイズの制限は主にFATの問題で時代に合わせてアクセス手段が複数選べるのはなかなか良く出来た規格だと思うよ。miniSDとか、忘れ去られた規格もあるけどさ。
          親コメント
      • by shesee (27226) on 2012年04月01日 19時48分 (#2127731) 日記
        マヤ歴は単に桁が増えるだけじゃ無かったか。通算日の20進数版なんだから
        親コメント
      • by Anonymous Coward

        歴史に学んだ結果、どれくらいあれば十分でしょうか?

        • by Anonymous Coward

          可変長な規格にしておけばいいんだな

          • by Anonymous Coward

            RFC 2550 [hi-ho.ne.jp]ですね。
            # これもエイプリルフールネタだった

            • by Anonymous Coward

              どうせなら"Extended Port Numbers for NAT NAT NOT IP masquarade"も本当に4月1日公開のRFC目指せばよかったのに

      • by Anonymous Coward

        グレゴリウス13世: 「まぁ、安心してわしの暦を使うことじゃな。誤差が一日出るまで3224年かかるからの」

      • by Anonymous Coward

        マジレスすると,少なくとも

        >> マヤ暦作った人「カレンダー数千年先まで作っときゃ充分だろーwww」

        は実際にマヤ族の人々にとっては充分でしたし,

        >> UNIX作った人「俺のOSを2038年まで使う奴なんて居ないから充分だろーwww」

        も,現時点で既にオリジナルのUNIXはほぼ絶滅しているでしょうから,ある意味で正しい読みだと思いますが.

        • by Anonymous Coward

          引き継ぐ側にちゃんと申し送りをしなければならないと言う事ですね。
          マヤ暦のメンテナンスをしていた人達も、後世に自分達の暦を掘り起こす人々が、
          カレンダーの更新も出来ずに「世界が終わる」と大騒ぎするほどの馬鹿だとは思ってなかったでしょうし、
          UNIX作った人もきっと同じ。

          フールプルーフ問題と考えるべきか、ブラックボックス化の弊害か、

      • by Anonymous Coward

        でも、
        アドレスだけは可変長でいくらでもホストがつながるネットワークプロトコルとか、
        カレンダーだけは可変長で、日付だけはいつまでも表せるOSとか、
        妙に複雑な仕組みで、種まきの日がすぐわからないカレンダーとか、

        中学生がプログラミング覚えたての頃やっちゃう設計の典型だと思うけど。

  • by Anonymous Coward on 2012年04月01日 21時03分 (#2127751)

    UDPのプロトコル番号6はそのまま流用して、
    src port と dst port の両方が0だったら拡張UDPとみなして、
    既存UDPのヘッダの後ろに新たに規定した
    src port, dst portが128bitの拡張UDPヘッダをつけるみたいな事をすれば良いんじゃね?

    TCPはsrc port, dst portが128bitの拡張ポート番号を格納するTCPオプション新規につくって処理すればよさげ。

    で、今、NATルータをいれている場所でこれらの拡張UDPヘッダやTCPオプションと
    既存UDPヘッダやTCPヘッダの書き換えを行えば良いんじゃね?

    # できの悪いNAT屋だったのでAC

    • by Anonymous Coward

      #2127751 です。
      UDPのプロトコル番号は17です。失礼しました。
      まぁいろいろツッコミどころは他にもあると思う。
      #できの悪いNAT屋が言う事なので、真に受けないように。

typodupeerror

皆さんもソースを読むときに、行と行の間を読むような気持ちで見てほしい -- あるハッカー

読み込み中...