⚠この記事はブログ移転前のアーカイブです

SambaやNASの転送速度が遅いという方が結構多いらしいので、いくつか記事を分けて解決法をつらつら書いていこうと思います。

この記事は【LAN設定編】になります。また、SambaやNASの記事は過去に書いているので内容が被ることがあるかもしれませんがご容赦ください。

【クライアント設定編】はこちら【クライアント設定編】SambaやNASの転送が遅い時の対処法

【サーバー・NAS設定編】はこちら【サーバー・NAS設定編】SambaやNASの転送が遅い時の対処法の転送が遅い時の対処法

NAS,Sambaサーバーのインターフェイスやケーブルは1000BASE-T以上対応しているか。

意外と重要なところです。最近のNAS本体で1000BASE-T非対応品というのはあまり聞きませんが、Sambaサーバーなど、安いNICで運用している場合は100BASE-TXまでの対応品がたまにあるので注意が必要です。

100BASE-TXだと理論値100Mbps≒12.5MB/s程度となり、非常に遅いです。

また、NAS、サーバー側のインターフェイスが1000BASE-T対応でもケーブルがカテゴリ5などの1Gbps非対応品だと意味がありません。もう一度カテゴリ5e以上のものか確かめてください。

また、Ubuntu Serverではethtoolコマンドを用いることによってインターフェイスの対応状況や、現在の接続状況を知ることが出来ます。

Server:~$ sudo ethtool eth1
Settings for eth1:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Advertised pause frame use: Symmetric
        Advertised auto-negotiation: Yes
        Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                             100baseT/Half 100baseT/Full
                                             1000baseT/Full
        Link partner advertised pause frame use: Symmetric
        Link partner advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        MDI-X: off
        Supports Wake-on: g
        Wake-on: g
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: yes
Server:~$

「Supported link modes」が自身のNICの対応状況。

「Advertised link modes」が実際に提案された速度対応状況

「Link partner advertised link modes」がルーターなどの相手側の対応状況です。

「Speed」で実際のリンクモードが確認できます。自身のNICとルーター側が1000Mbps対応なので1000Mbpsで接続できていることがわかります。

対応しているのに「Speed」が100Mbpsになっている場合、ケーブルが古いか、リンクに失敗している可能性があります。後者の場合は以下のコマンドを打ってリンク速度を設定し直します。

Server:~$ sudo ethtool -s eth1 speed 1000

ジャンボフレームを設定して高速化を図る

Gigabit環境ではジャンボフレームを設定することで高速に転送することが可能だと言われています。ただし、クライアントやLANなどの機器が全てジャンボフレームに対応していなければなりません。

UbuntuServerではifconfigコマンドでmtu値を変更しジャンボフレームに対応させます。

$ sudo ifconfig eth1 mtu 6000
SIOCSIFMTU: 無効な引数です
$

しかし私の環境ではジャンボフレームに対応していませんでした。1500以上は弾かれます。ジャンボフレームによってNAS,Sambaが高速化するか検証できていません。

無線接続でNAS,Sambaにアクセスしていないか

最近のノートPCはLANコネクタがついていないものが多いですが、無線接続でNASにアクセスすると非常に遅くなります。

802.11nだから300Mbps出る!十分!と思いでしょうが実際に300Mbps出ることはほとんどありません。実効速度は3分の1程度です。

出来ることならLANケーブルを接続してNAS、Sambaでの作業を行ってください。

と言っても無線しか選択肢がない時もありますし、無線接続で少しでも早くなる設定をしてみます。

WEBブラウザで無線ルータの設定にアクセスしてください。「192.168.0.1」「192.168.2.1」など、メーカーによって異なりますので取扱説明書を参照してください。logitec製は「192.168.2.1」、IO-DATA製は「192.168.0.1」とブラウザに打ち込むことで多分設定画面に行けます。

※メーカーによって設定項目の名称が異なったり、項目そのものがない場合があります。画面はWN-AC1167GRの設定画面を参考にしています。

  1. 複数のSSIDが設定されている場合はできるだけ数を減らす。

無線LAN基本設定SSIDは数を減らす

無線LAN基本設定SSIDは数を減らす

2.4GHz帯のSSIDが複数設定されている時があります。IO-DATA製ではSSID3にゲスト用SSIDが既に設定されていました。不要であれば無効にします。SSID2は5GHz帯なので無効にする必要はありません。
  • 各種詳細な設定を変更する。

無線LAN詳細設定

無線LAN詳細設定

「ビーコン間隔」を100msから250msに、「DTIM周期」を1から3に、プリアンブルを「ショート」にしました。用語の意味はこちら</>を参照して適切な値へ変更してください。プリアンブルは「ショート」だと古い機器はつながらないかもしれませんので注意してください。また、帯域も40MHzや80MHzなど大きい値に設定しておきます。

  • ハードウェアNATを有効に

    NATアクセラレーションを有効に

    NATアクセラレーションを有効に

    このオプションが有る場合は、有効にすることで速度向上が見込める場合があります。不具合があれば無効にしておいてください。

無線LANではより高速な802.11ac対応の無線LANと子機を

802.11n規格では理論値最大300Mbpsですが、実効値は3分の1~3分の2程度まで下がります。802.11acではより高速な800Mbpsや1300Mbpsで接続することが可能です。もちろんこれも理論値ですが802.11nよりずっとマシです。帯域幅も0MHzと広く取ることが出来る製品もあるのでこれを使わない手はありません。

私はWN-AC1167GRを使用しています。安い製品ですがちゃんと仕事してくれています。安い製品だけあって設定項目が少なく悶々としましたが、大きな問題ではありません。定番はNECのAtermシリーズだと思います。

WN-AC1167GRは5500円程度で購入できると思います

 

無線LAN子機も802.11ac対応品を使用しましょう。USB子機は必ず3.0ポートへ挿してください

LAN設定以外にも

【クライアント設定編】SambaやNASの転送が遅い時の対処法

公開中ですのでぜひご覧ください