読者です 読者をやめる 読者になる 読者になる

あっきぃ日誌

鉄道ブログのような技術系ブログのようななにか

ゼロピッピOTGで普通にLANにつながってもらう

RasPi

ちょい前のブログで、金魚カメラをRaspberry Pi 1 Model AからZeroに置き換えた話を書きました。

akkiesoft.hatenablog.jp

で、このたび「無線LANをやめてOTGモードにしてケーブル1本にしたいね」というのを実現しました。

f:id:Akkiesoft:20160918214243j:plain

構成

接続先は自宅ESXiサーバーです。OTGモードにしたPiZeroをUSBパススルーでUbuntu16.04の仮想マシンに接続しています。仮想マシンの中ではLinuxブリッジを組んで、仮想マシンとPiZeroのネットワークデバイスのプロミスキャスモードにしてブリッジ接続してやる感じです。シンプルですね。

ESXiだけやる作業

ESXiじゃなければ適当なマシンでブリッジを組むだけですが、ESXiの場合は仮想ネットワークスイッチでもプロミスキャス(無差別)モードを有効にする必要があります。

f:id:Akkiesoft:20160918215236j:plain

ブリッジを組む

とりあえずbridge-utilsを入れます。

sudo apt-get install bridge-utils

/etc/network/interfacesに設定を書きます。ESXi環境だと?Systemdによってデバイス名がens160とかよくわからんことになりますが適宜読み替えてください。2台用意してるのは、エアぴっぴリモコンのやつも使うためです。

# The primary network interface(仮想マシンのネットワークデバイス)
auto ens160
iface ens160 inet manual
  up /sbin/ifconfig ens160 promisc on
  down /sbin/ifconfig ens160 promisc off

# PiZero(2台分用意した)
auto ens33u1
iface ens33u1 inet manual
  up /sbin/ifconfig ens33u1 promisc on
  down /sbin/ifconfig ens33u1 promisc off
auto ens33u2
iface ens33u2 inet manual
  up /sbin/ifconfig ens33u2 promisc on
  down /sbin/ifconfig ens33u2 promisc off

# ブリッジ
auto br0
iface br0 inet static
  address 192.168.x.x
  netmask 255.255.255.0
  gateway 192.168.x.z
  dns-nameservers 192.168.x.y
  # 仮想マシンのネットワークデバイスとPiZeroのデバイスを並べる
  bridge_ports ens160 ens33u1 ens33u2

とりあえず一回再起動したら終わり。

快適

おもむろにPiZeroをUSBホストケーブル1本でブシッと自宅サーバーに挿すだけで、LANに接続されるいい感じの環境ができました。

安定性とかはしばらくやってみないとなんとも言えませんが、いらなそうな設定がないかと思ってちょっといじったりすると不安定になって戻すのに苦労するので、いじらなければ問題なさそうです(雑)。

あと気にしている点としては、自宅サーバーのUSBポートがそこまで電力供給に余裕あんのかなってくらいです。まあ電源つきUSBハブを使ってやれば解消しそうではあります。