質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Raspbian

Raspbianは、DebianベースのRaspberry Pi用ディストリビューション。ハードウェア浮動小数点演算を有効にすることが可能で、Webブラウズなどの速度を向上できます。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Debian

Debianは、Debian GNU/Linux などのOS(オペレーティングシステム)です。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Q&A

解決済

1回答

1871閲覧

ラズパイ3でネットワークブリッジの作成中,ssh接続できなくなってしまいました。

soohoo

総合スコア22

Raspbian

Raspbianは、DebianベースのRaspberry Pi用ディストリビューション。ハードウェア浮動小数点演算を有効にすることが可能で、Webブラウズなどの速度を向上できます。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Debian

Debianは、Debian GNU/Linux などのOS(オペレーティングシステム)です。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

0グッド

0クリップ

投稿2022/07/28 16:17

編集2022/07/29 16:51

前提

Raspberry Pi 3でネットワークエミュレータを自作しています。eth0とwlan0でなるbr0を用意し,hostapdでアクセスポイント化して使っていたのですが,接続が安定しないため有線のブリッジを利用することにしました。
手を加える前のbrctl showの結果

bridge name bridge id STP enabled interfaces br0 8000.b827eb27c5da no eth0  wlan0

実現したいこと

インタフェースeth0とeth1からなる有線のブリッジbr1を作成する
(eth1はUSBポートにアダプタを接続してLANケーブルに変換しています。)

発生している問題・エラーメッセージ

br1の作成中にraspberry piがssh接続できなくなってしまいました。
しかもtimeoutともconnection confusedとも出てきません。何のエラーメッセージもないのです。

経緯

新しく動作させたい有線ブリッジはeth0とeth1をつなげたものでbr1と定義しました。

sudo brctl addbr br1

で作成はできたのですが,br1にeth0とeth1を追加しようと

sudo brctl addif br0 eth0 eth1

ここでbr1とすべきところをbr0にしてしまったのが間違いの始まりだったのですが、気づいた時にはもう取り返しのつかないことになってしまったので…最後まで読んでいただけると幸いです。

すると,

device eth0 is already a member of a bridge; can't add it to bridge br0.

と出たため,止むを得ずbr0を削除することにしました。(ここも削除ではなくDOWNさせるべきだった、、

sudo brctl delbr br0

しかし,ここで

bridge br0 is still up; can't delete it

と出てきたので

sudo ip link set br0 down

でdownさせることにしました。

しかし,何度コマンドを叩いても,再起動して確認しても,br0をdownできませんでした。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:27:c5:da brd ff:ff:ff:ff:ff:ff 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether c4:36:c0:eb:55:e8 brd ff:ff:ff:ff:ff:ff 4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:72:90:8f brd ff:ff:ff:ff:ff:ff 5: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:27:c5:da brd ff:ff:ff:ff:ff:ff

そこで,br0に含まれるインタフェースをdownさせてからbr0をdownさせることを思いつきました。

sudo ip link set eth0 down

でeth0をdownさせて(ここでsshが途切れる。ラズパイとルータ間をeth0で繋いでいたため),ラズパイとルータをeth1で接続することでラズパイを再度NW上に復帰させてssh再接続し,sudo ip link set br0 downでbr0をdownできました。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master br0 state DOWN mode DEFAULT group default qlen 1000 link/ether b8:27:eb:27:c5:da brd ff:ff:ff:ff:ff:ff 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether c4:36:c0:eb:55:e8 brd ff:ff:ff:ff:ff:ff 4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:72:90:8f brd ff:ff:ff:ff:ff:ff 5: br0: <BROADCAST,MULTICAST> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000 link/ether b8:27:eb:27:c5:da brd ff:ff:ff:ff:ff:ff

その後、br0を削除することで頭が一杯だった私はsudo brctl delbr br0でbr0を削除しました

このときのip link showの結果は以下の通りです。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:27:c5:da brd ff:ff:ff:ff:ff:ff 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether c4:36:c0:eb:55:e8 brd ff:ff:ff:ff:ff:ff 4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:72:90:8f brd ff:ff:ff:ff:ff:ff

ここの一覧で最初に定義したbr1がないのもおかしいように思います。
br0が無くなったのでbr0の名前を引き継ぐことも考えましたが,hostapdにbridge = br0と記述しており,私自身が混乱してしまいそうだったため,sudo brctl addbr br1でbr1を作成しました。

その後,br1にeth0とeth1を追加したところでssh接続が途切れてしまいました

sudo brctl addif br1 eth0 eth1

ここから先は何の返事もありませんでした

補足情報(FW/ツールのバージョンなど)

Raspbianは最新のBullseyeを利用しています。
ssh接続はMacbookから行っています。
無線でなら完成していたのに余計なことをしてしまいました。。
やはりコードのみ救出して,SDカード焼き直しでしょうか。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kikukiku

2022/07/29 00:30

>やはりコードのみ救出して,SDカード焼き直しでしょうか。。 これしかないですね。 がんばです。
guest

回答1

0

自己解決

brctlコマンドを使わずに,/etc/network/interfaces ファイルにbr1の設定を書き込むことで,一応ブリッジを作成できました…!
問題の直接的な解決ではありませんが,想定した動作をしてくれているので,以下に自己解決として追記いたします。

ディスプレイとキーボード・マウスを直接繋いで起動し確認したところ,eth0とwlan0の両方がDOWNしていたので,UPさせました。
その後,br0を作成した際の手順を思い出し,/etc/network/interfaces を編集しました。

# interfaces(5) file used by ifup(8) and ifdown(8) # Include files from /etc/network/interfaces.d: source /etc/network/interfaces.d/* # 以下ブリッジ設定 2022/7/7 # auto br0 # iface br0 inet dhcp # bridge_ports eth0 wlan0 # 有線ブリッジ作成 2022/7/29 auto br1 iface br1 inet dhcp bridge_ports eth0 eth1

具体的には,br0の箇所をコメントアウトし,br1の設定を記入しました。br0をDOWNさせても再起動して確認するとUPになっているのはこのファイルの記述のせいだとここでやっと気づけました、、

ここで再起動すると,ip link showの結果は,

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br1 state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:27:c5:da brd ff:ff:ff:ff:ff:ff 3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:72:90:8f brd ff:ff:ff:ff:ff:ff 4: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast master br1 state DOWN mode DEFAULT group default qlen 1000 link/ether c4:36:c0:eb:55:e8 brd ff:ff:ff:ff:ff:ff 5: br1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000 link/ether b8:27:eb:27:c5:da brd ff:ff:ff:ff:ff:ff 6: br0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 link/ether b8:27:eb:72:90:8f brd ff:ff:ff:ff:ff:ff

となり,br0の代わりにbr1が立ち上がり,br1にeth0とeth1が使われていることがわかったので作成完了。

有線の方が無線より安定した環境を作れるのでまた改めてパケロスや遅延を入れて遊ぼうと思います。

投稿2022/07/29 16:31

soohoo

総合スコア22

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問