Raspberry Pi の有線LANアダプタ

LANアダプター

Raspberry Pi model B, B+, Pi2 model B には、LAN ポートが付いていますが、model A, A+ にはUSB接続の有線LANアダプタを使うことで有線でLANに接続することができます。(Zero も USB 変換コネクタか USB HUB を使えば接続可能だと思います。)
中でも USB-LAN1000RUSB-LAN100R はメーカーが Raspberry Pi 対応(Linux対応)と公言している製品です。どちらの製品もUSBポートに挿すだけで利用できます。

USB-LAN1000Rは、ギガビット(1000Mbps)の有線LANアダプタですが、Raspberry Pi は USB2.0 なので最大転送速度480Mbps (理論値)の制限を受けるため、そこまでのスピードはでません。オーバースペックです。それでも100Mbpsの  Pi model B, B+, Pi2 model B 標準LANポートや、USB-LAN100R よりもスピードはでるかもしれません。(でました。)

USB-LAN100R の方は 100Mbps のアダプタです。Raspberry Pi model B, B+, 2B と同等の速度ですので、こちらでも十分かもしれません。価格も安いですしね。

どちらの製品も Pi model A, A+, (Zero) で有線LANが使いたい時や、Pi model B, B+, Pi2 model B でLANポートが2つ必要な場合に有効です。

 

USB-LAN1000R

接続:

USB-LAN1000R を USB ポートに接続して起動するだけで認識しました。

$ lsusb
    :
Bus 001 Device 006: ID 0bda:8153 Realtek Semiconductor Corp.
    :

Realtek 8153 のようです。

 

設定:

ifconfig で追加されたネットワークインターフェース名を確認します。Raspberry Pi 2/3 等は標準のネットワークポートが eth0 なので、この例では eth1 が追加されています。

# ifconfig -a
                              :
eth1      Link encap:イーサネット  ハードウェアアドレス XX:XX:XX:XX:XX:XX 
          UP BROADCAST MULTICAST  MTU:1500  メトリック:1
          RXパケット:0 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:0 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:1000 
          RXバイト:0 (0.0 B)  TXバイト:0 (0.0 B)
                              :

 

/etc/network/interfaces ファイルに下記の eth1 の設定のどちらかを追加します。

  • 例えば DHCP による IP アドレス自動割り当ての場合
auto eth1
iface eth1 net manual

ネットワーク内に DHCP サーバが必要です。

 

  • 例えば固定アドレスの場合
auto eth1
iface eth1 inet static
address   192.168.0.100
network   192.168.0.0
netmask   255.255.255.0
broadcast 192.168.0.255
gateway   192.168.0.1
dns-nameservers 192.168.0.1

上記の各 IP アドレスは設定例の為、設定する各 IP アドレスは自分の環境に合わせて適切な値を設定すること。

 

ifup で eth1 を有効にします。

# ifup eth1

ifconfig -v eth1 で IP アドレスが割り当てられていることが確認できれば OK です。

# ifconfig -v eth1
eth1      Link encap:イーサネット  ハードウェアアドレス XX:XX:XX:XX:XX:XX 
          inetアドレス:192.168.0.100 ブロードキャスト:192.168.0.255  マスク:255.255.255.0
                      :
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
                      :

 

計測:

次に性能計測するために、LAN 内で iperf サーバを起動し、Raspberry Pi から iperf で転送速度を計測してみました。

 

Server 側:

unix 系の Server で iperf をインストールして、-s オプションをつけて起動します。

$ iperf -s

 

Raspberry Pi 側:

今回は Raspberry Pi を client にします。

iperf をインストールして、クライアントモードで実行します。(この例のサーバホスト名は server.local です。)

$ sudo apt-get install iperf
$ iperf -c server.local -i 2

 

iperf で測定した結果です。(USB-LAN1000R)

$ iperf -c server.local -i 2
------------------------------------------------------------
Client connecting to server.local, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[  3] local 192.168.0.XX port 49679 connected with 192.168.0.XX port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 2.0 sec  62.6 MBytes   263 Mbits/sec
[  3]  2.0- 4.0 sec  64.8 MBytes   272 Mbits/sec
[  3]  4.0- 6.0 sec  63.5 MBytes   266 Mbits/sec
[  3]  6.0- 8.0 sec  64.9 MBytes   272 Mbits/sec
[  3]  8.0-10.0 sec  62.5 MBytes   262 Mbits/sec
[  3]  0.0-10.0 sec   318 MBytes   266 Mbits/sec

 

内蔵LANポートを使った場合の測定結果です。

$ iperf -c server.local -i 2 
------------------------------------------------------------
Client connecting to server.local, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[  3] local 192.168.0.XX port 53955 connected with 192.168.0.XX port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 2.0 sec  22.5 MBytes  94.4 Mbits/sec
[  3]  2.0- 4.0 sec  22.5 MBytes  94.4 Mbits/sec
[  3]  4.0- 6.0 sec  22.5 MBytes  94.4 Mbits/sec
[  3]  6.0- 8.0 sec  22.5 MBytes  94.4 Mbits/sec
[  3]  8.0-10.0 sec  22.5 MBytes  94.4 Mbits/sec
[  3]  0.0-10.0 sec   113 MBytes  94.3 Mbits/sec

 

この結果は、Server 側のネットワーク性能にも依存するので、Bandwidth の値はあくまでもテスト環境での結果に過ぎず、USB-LAN1000R や内蔵LANポートの絶対的な性能をしめすものではないことに注意してください。

ただし、測定結果を相対的に評価すれば、USB-LAN1000R の方が十分速いということは言えるでしょう。

 

 

Raspberry Pi Zero の場合:

Raspberry Pi Zero の場合は、アダプターキットに含まれる micro USB-USB 変換アダプター等を使うことで、USB-LAN1000R, USB-LAN100R を使うことができます。

zero_accessories_002
アダプターキット

 

zero_lan_001
Raspberry Pi Zero で USB-LAN1000R

 

同等品:

現在、USB-LAN1000R は販売が終了してしまったようです。

同等品を探したところ、Anker の USB 3.0 LANアダプターも Realtek 8153 が使われており、同じように使用することができることがわかりました。USB-LAN1000R の代わりにこちらをご使用下さい。

 

最新情報は、「Raspberry Pi の有線LANアダプタ -その2-」をご覧ください。

 

関連記事: