2018/03/28

NATセッション数

追記)IPv6(IPoE)接続では接続先がIPv6対応だったときには1対1になるのでNAT不要。
  接続先がIPv4のときは、プロバイダー(VNE)側でv4(NAT)変換をしてしまうので、
  自前ルーターの性能(NATセッション数)は、意味がない。
  で、VNEのNATセッション数が、1024個までだったりして、、
  (家庭用としても、1,024は、少ないんじゃ?)
  結局、どうすればいいんだっ!
追記)結局、IPv6(IPoE)は、イイのか?に続きを書きました。
---------------------------------------------------------------------------------------
自分用メモ
(調べにくいもので、ガセが入っていたらすんません)

NATセッション(数)を一言で言うと、ルーターの中に入っている電話交換手さん(線の数)
1960年代には、国際電話をかけるときとか、交換手さんを呼んで「なになに国の何番に繋げてください」と言っていた。
↑この(昭和な黒電話時代の)例えだと、伝わりにくいか、、

まずは、IP(v4)アドレス。
通常(PPPoE接続では)、プロバイダーからグローバル(世界で唯一な)IP(v4)アドレスを1回線に1つ割り当てられる。(IPoE/IPv6では、端末ごとにIP(v6)アドレスが割り当てられる)
アナログモデムの時代、1回線に1台の端末(PC)を繋ぐときには、分配の意識はない。
(PCの内部的にブラウザの都合によってルーティングするので意識は必要ない)

が、複数台の端末を同時に繋ぐときには、誰がどこに繋いでいるのか、
PC本体ではなく、ルーターが構内用に分配/交通整理(ルーティング)をする。
1つしかないグローバルIPアドレスをローカル(構内用)IPアドレスに振り分け(NAT)、
各端末と接続先のルーティング(ヒモ付/セッション)をルーターが管理することになる。

(以下、ルーターを使ったIPv4での考え方) ---------------
NATセッション数とは、
例えば、 ブラウザでyahoo.co.jpを開いた場合、
端末(192.168.1.2)  → ルーター → yahoo.co.jp(182.22.59.229) と、
端末と接続先IPアドレスの組み合わせを、ルーターの内部メモリーに一定時間維持するもの(保持している数)。
 
yahooのトップページだけを見たつもりでも、「y.img.jp」「rdsig.yahoo.jp」他、
複数のサーバー(複数のIPアドレス)と通信している。→追記3)
(複数のNATセッション(紐づけ/テーブル)を使っている。)
また、画面を閉じてもルーター内部で一定時間(Atermの初期値1時間)テーブルが
保持されてしまっている。

短時間にWeb巡回するとか、たくさんのタブを出しっぱなしにしておくとか、
(例えば、Windows10のPCで、起動直後、NATセッションを300程消費する)
(起動直後にtenki.jpを見たら、NATセッション140追加で、、)
スマホでも、見ている画面以外に、後ろで、メールチェック、LINEが動いている。
1台の端末だけで、数百のNATテーブルを消費してしまうことは簡単なことです。

端末数が10台位までは、NTTひかり電話対応ルータ(HGW)、
(HGWの最大NATセッション数=4,096 ÷ 1PC 400 = 10台)
5〜6,000円位の無線LANで、用事が済むと思うのだが、
(NTTのHGWで有線・無線接続端末を合わせて10台以下と言っている。)

家庭で使うとしても、ノートPC、デスクトップPC、プリンター、スマホ、ゲーム機も含め、
端末数が10台を越したら、
最大NATセッション数(NATテーブル数)の意識が必要と思われる。
(最大数を超えると、保持時間が過ぎるまで、次の接続ができなくなる。) 

追記)無線LANを利用している時には、無線接続台数も考える必要もある。

最大NATセッション数の多いルーターに、PPPoE、メインルーターをさせる
(NTTのルーターは、光→LANだけのスルーにして、↑にPPPoEを任せる。)
のが吉と思う。



NAT

NEC Aterm WG1900HP2 18,000
NATタイマー変更可
DHCP 100個まで
Buffalo WXR-2533DHP2 32,000
NETGEAR R7800 32,000
NATタイマー変更不可


YAMAHA NVR510 65,000

NEC IX2105 65,000
NEC IX2106 250,000
NATテーブルの保持タイマーを変更することで、
テーブル溢れを対策できるものもある。

追記 20190814 : 400人のお客様が入るホテルでNVR510があったので見せてもらった。
 夜の時間帯で、NATセッションピーク 32,000ほど。(宿泊客1人=NATセッション80)
 客層とか、あったりするし、同時に何人が使っているかはわからなかったけど、
 そういう数字になるんだなぁと。

追記
  • Buffaloの一部機種は、iPhoneがネットワーク中にいると、他の機器まで不安定になる。
  • Buffaloの2.4GHzで40MHz固定にすると、接続できないiPhoneがある。
  •  (Apple公式では、2.4GHzでは20MHzを使え、とある。)
  • TP-Link、ZTE、Huawei、D-Link等中国メーカー製のは、気持ち悪いのでパス。
  • え、ウチですか?ウチではFreeBSDにNATやらしてます。
  • (↑最近はIX2106で、PPPoE(IPv4,IPv6)してます。)
  • (参考までに、フレッツギガ、IPv4、PPPoEで600Mbps以上でてます。)
  • スイッチングハブは、前にも書いたけど、NETGEAR GS116V2一択。
なお、夜になると遅くなる。とかは、プロバイダーの問題なので、上記は関係ない。
(無線が飛びまくっている場所では、夜になると、無線がジャムられる可能性もある)
PPPoEから、IPV6/IPoEに変更すると、少し速くなる可能性もあるみたい。
もちょっというと、プロバイダーの引っ越しを考えるか、

追記2)
  そいえば、ついでに、DHCP割当数とリース時間。
  NTTのDIR870とか、NTTが法人向けにとか出しているのだが、
  ま、同時接続のキャパはあるんだろうけど、、
  DHCPサーバーの初期設定では、割当IP数100はいいとしても、リース時間が24時間!!
  24時間以内に、100人繋ぐと、次は無し。回転の良い店舗だと、回んないし。
  あとまた、NVR510のDHCPサーバー、初期設定のリース時間は、72時間。
  社内で使うとかは良いかもだけど、ホテルとか、お客に使わせるとしたら、
  リース時間を1時間にするとか、割当を大きくするとか、変更が必要。

  Chromeでは、サイト(webページ)を開いたときに、いくつのサーバーと
  接続しているか表示できる。
  URLの左(何アイコンというのか?)をクリック、Cookieとサイトデータ>
  デバイス上のサイトデータ 「〇〇件のサイトが許可されています」
  この「〇〇件」が、接続中のサーバー件数。
  で、FQDN毎にDNS問い合わせするので、それも含むと、
  使用NATセッション数としては、この「〇〇件」の2倍の数字になる。
  参考) tenki.jp 70件 = NAT 140
      watch.impress.co.jp 100件 = NAT 200
  この2サイトを見ただけで、NATセッション300以上を消費する。
  (impressさん、ぼちぼちIPv6対応してください!)
  (広告の出方によって、件数変わる)
  (IX2106の装置ログの取得→NAT/NAPT情報、entriesで確認した)


1 件のコメント :

  1. 非常に割り切ったお話をして頂いて、ロースキルの者にとって助かります。

    返信削除