
ラズパイで有線LANをTCP接続機器に、Wi-Fiをインターネットに接続する
使ったのはRaspberry Pi 3 モデルBです。だから無線LANはついています。
NOOBS2_4_2をインストールしました。
普通にモニターもキーボードも挿しています。
(最終的には自動で起動したり動かしたいプログラムを同期したり非同期したりしますが)
1.普通にWi-Fiに繋ぐ
モニター右上の設定画面から繋いでも良いですが、繋ぐネットワークを確実に限定するならこれで。
1 |
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf |
Wi-Fiの接続設定のファイルです。
環境に合わせて書き込んでください。
1 2 3 4 5 |
network={ ssid="ssidssidssid" psk="password" key_mgmt=WPA-PSK } |
LAN内部にpingを飛ばして、動作確認しましょう。
通常のノートPCのubuntu14.04でも同じ設定をしたのですが、こちらはデフォルトのネットワークマネージャーを削除して、wpasupplicantをapt-getするところからでした。
2.TCP接続したい機器側で、その機器の固定IPとGetwayを入力する
例)
GW : 192.168.2.1
ゲートウェイがラズパイになります。
ラズパイにDHCPを入れることもできますし、実際にDHCPのある環境にも同じ機器を繋いだことがあるのですが、固定IPの方が動作が安定したので固定しました。
3.Raspberry Piの有線LANを機器と同じネットワークに接続する
1 |
sudo nano /etc/dhcpcd.conf |
機器で決めたGatewayアドレスを、eth0(ラズパイ既存のEthernetポート)固定IPとして書き込みます。
1 2 3 4 |
interface eth0 static ip_address=192.168.2.1/24 static routers=192.168.2.1 static domain_name_servers=192.168.2.1 |
4.インターネットに繋げるようにする
3の時点で、有線LANに繋いでいると、インターネットに繋がらなくなっています。LANケーブルを外せば繋がりますが。ネットワークの優先順位がEthernetになっているからです。
1 |
route |
と打ち込むと、ネットワークを検索する経路の優先順位がわかるのですが、こんな風になっているはずです。
1 2 3 4 5 |
受信先サイト ゲートウェイ ネットマスク フラグ Metric Ref 使用数 インタフェース default 192.168.2.1 0.0.0.0 UG 202 0 0 eth0 default 192.168.0.3 0.0.0.0 UG 303 0 0 wlan0 #192.168.0はwi-fiのネットワークで3はそこのルータ 192.168.0.0 * 255.255.255.0 U 303 0 0 wlan0 192.168.2.0 * 255.255.255.0 U 202 0 0 eth0 |
wlan0が無線、eth0が有線ですね。
ifmetricをインストール。
1 |
sudo apt-get install ifmetric |
そして設定。
1 |
sudo nano /etc/network/interfaces |
内容をこのように変更。
1 2 3 4 5 6 7 |
iface eth0 inet dhcp metric 99 # 優先度を低く。高いのより低ければなんでもいい。0が一番高い allow-hotplug wlan0 # iface wlan0 inet manual =>コメント化 iface wlan0 inet dhcp metric 0 # 優先度を高く |
route を打って確認すると、どうでしょうか。wlanが上にいっていますか。
インターネット、LAN内、機器の三箇所にpingが通じますか。
もしうまくいかないときは、resolvconfもインストールしてください。
1 |
sudo apt-get install resolvconf |
以上です。
SIMの入ったモデムでダイヤルアップするときは、wlanでなくpppが優先経路になったりする。