Hetzner VPS では外部 IP を使用できません

Hetzner VPS では外部 IP を使用できません

最近、Hetzner の仮想サーバー モデルを変更しました。新しいモデルには、インターネットからアクセスできる外部 IPv4 アドレスがあります (当然のことですが)。ただし、この外部 IP を構成で使用することはできません。iptablesルールは効果がなく、サーバーはこの IP を使用してどのポートにもリスナーをバインドできません。出力に「ローカル」IP アドレス ( )openvpnが見つかりました。これを構成で使用すると、すべてがうまく機能します。172.31.x.xifconfig

以前のサーバーではどこでも使えました。それで疑問に思ったのですが、なぜ新しいサーバーでは外部IPが使えないのでしょうか?OSはUbuntu 15.04

答え1

Hetzner は、仮想サーバーにパブリック IPv4 アドレスを割り当てることを停止しました。私の知る限り、この変更は製品名が VQ から CX に変更されたときに発生しました。ただし、NAT の使用については製品の説明には記載されていません。

最終的に、Hetzner は、VM が実際のパブリック IPv4 アドレスとルーティングされた /64 IPv6 プレフィックスを取得する新しいクラウド プラットフォームを導入しました。両方のバージョンは CX という名前を共有しています。

2012 年と 2013 年に注文された仮想サーバーは、VQ ラインが廃止される 2019 年までパブリック IPv4 アドレスを保持します。ただし、2016 年に注文された仮想サーバーには RFC1918 アドレスしかなく、Hetzner はそのような仮想サーバーにパブリック IPv4 アドレスをルーティングしません。

彼らは、各仮想サーバーに専用のパブリック IPv4 アドレスを割り当て、割り当てられた RFC1918 アドレスに NAT しました。Hetzner 氏は、これは 1:1 NAT であるため問題ではないと考えました。

ご存知のとおり、サーバーを構成するときにエラーが発生しやすくなります。この NAT について知っておく必要があります。また、何かを構成するたびにマッピングを調べる必要があります。このような構成で入手した最初の仮想サ​​ーバーでは、このため最初の数日間で 2 回誤った構成になりました。

パブリック IPv4 アドレスを知ることに依存するソフトウェアは、動作しなくなるか、特別な設定が必要になります。さらに、トンネルされたパケットは NAT されないため、一部の VPN および IP トンネルでは問題が発生する可能性があります。

これらの潜在的な問題が意図した使用方法に影響を与えないことがわかっており、構成の変更時にパブリック アドレスとプライベート アドレス間のマッピングを考慮する必要があることに問題がない場合は、状況を受け入れることができます。

ただし、ほとんどの NAT 実装はステートフルであることに注意してください。NAT が実際にステートフルである場合、状態が失われたときに TCP 接続が停止する可能性があります。

Hetzner が使用している NAT がステートフルかステートレスかはわかりません。ステートフル性をテストする最も明白な方法は、接続の確立をトンネル化し、TCP 接続が確立したらトンネルを無効にすることです。残念ながら、この種類のトンネル化はまさに機能しないため、この実験を実行するには、まず 1:1 NAT 構成を複製する必要があります。私はこのかなり複雑な実験には挑戦しませんでした。

選択できるオプションは次のとおりです:

  • 新しい CX ラインにアップグレードすると、Hetzner から実際の IPv4 アドレスとルーティングされた /64 IPv6 プレフィックスが提供されます。
  • トラフィックが 1:1 NAT を通過することを受け入れ、それに伴う欠点も受け入れます。
  • 重要なトラフィックはすべて IPv6 で実行します。Hetzner は NAT を使用せずに IPv6 トラフィックを適切にルーティングします。
  • 専用サーバーに切り替えます (それでもパブリック IPv4 アドレスが取得されると仮定しますが、製品の説明のどこにも NAT の使用法が記載されていないため、これを把握するのは困難です)。
  • 別のプロバイダーに切り替えます。

答え2

ヘッツナーから借りているので、ドイツ語を話していると思いますので、直接の回答をここに記します。Hetzner のサポート wiki:

私の VM が IP 172.31.1.100 である理由は何ですか?

またはその他:

私の VM に他の IP を Robot として追加するのはなぜですか?

私の VM にプライベート IP を持たせたいのですが?

CX モデルでは、vServer の IPv4 アドレスがプライベート IP であり、NAT ごとに 1:1 でパブリック IPv4 アドレスが設定されます。現在のプライベート IP は 172.31.1.100 です。公開 IP は Hetzner Robot に表示されます。

英語で:

VM の IP が 172.31.1.100 になっているのはなぜですか?

または:

VM の IP がロボットに表示される IP と異なるのはなぜですか?

VM にプライベート IP が割り当てられているのはなぜですか?

CX モデルでは、仮想サーバーの IPv4 アドレスはプライベート IP であり、パブリック IP 上の NAT を介して 1:1 に設定されます。現在、プライベート IP はすべて同じで、172.31.1.100 です。パブリック IP はロボットに表示されます。

関連情報