web-dev-qa-db-ja.com

LinuxVMを使用するVMWareESXiホスト内で非常に遅いNAT

高速ネットワークに接続されたVMWareESXiホストがあります。ホストは2つの仮想マシンを実行します。

  1. ゲートウェイ
  2. クライアント

ゲートウェイには2つのネットワークインターフェイスがあります。1つは外部ネットワーク(vSwitch0)にブリッジされ、もう1つはサーバーの内部ネットワーク(vSwitch1)にブリッジされます。 firehol がインストールされており、NAT)を実行しており、内部クライアントマシンのポート転送を行っています。

クライアントマシンには内部IPがあり、ゲートウェイを介してインターネットに接続します。すべてがうまく機能しますが、クライアントからインターネットへの転送速度は非常に遅く、30kB/s未満です。ゲートウェイからインターネットへの転送とインターネットへの転送の両方が高速(100Mbit)であり、インターネットからクライアントへのトラフィックも高速です。ネットワークダンプを実行して問題が発生する可能性がある場所を確認しようとしましたが、何も見つかりませんでした。線が遅いように見えます。

また、2つのVM間の転送速度はほぼフルギガビットです。だからそれも問題ではありません。どちらのマシンも、特別な変更を加えずにDebianLennyを実行しています。 VMXNET準仮想化ネットワーキングにopen-vm-toolsを使用しています。

2
tstm

私はこの問題の解決策を見つけました。

完全に内部ネットワーク(物理ネットワークインターフェイスに接続されていない)の場合、OS内部からのTCPセグメンテーションオフロード)を無効にする必要があります。

これは簡単なコマンドです。

ethtool -K <interface> tso off

このコマンドの後、転送速度は30kb/sから完全な100Mbitになりました。

4
tstm

別の種類の仮想ネットワークカードを使用してみましたか? E1000エミュレーションは私にとってはかなりうまく機能しているようです、多分それはドライバーベースですか?

0