Author Archives: ganesha

OpenWrtでBridge Firewallを使う

NASにファイヤーウォールがないため、途中にProxyArpを使ってブリッジしたルータをファイヤーウォールにして使っていました。これでも十分機能したのですが複雑です。そこでブリッジファイヤウォールを使ってシンプルにしてみました。 OpenWrtの公式ファイヤーウォールは使えないので切っておきます。代わりにshorewall-liteを使います。 OpenWrtをインストールしたOrangePi zeroがあったので、それにshorewallとshorewall6をインストールしてfirewallファイルをコンパイルします。 ShorewallのBridge Firewallの設定例 テスト TODO DSA switchだとうまくいかない 参考 https://openwrt.org/docs/guide-user/firewall/fw3_configurations/bridge https://shorewall.org/bridge-Shorewall-perl.html

Posted in OpenWrt | Comments Off on OpenWrtでBridge Firewallを使う

Sony NCP-HG100/CellularにOpenWrtを入れる

ADSLの終了により楽天モバイルを使って固定回線化することになりました。ルーターを探していた時にLTEバンド3が使えるIO-DETAのルーターがあるのですが、高額のため躊躇していました。そんなところにSonyのNCP-HG100/Cellularが使えるという情報があったのでアマゾンで四千円弱で購入しました。APNの設定すぐに使えたのですがいろいろと問題も出てきました。 バンド3で使っているいうちに突然パートナー回線に切り替わり容量を使い切って遅くなる LTEモジュールに高負荷をかけるとリセットする 最初のセットアップ 購入から最初の設定はSIMを差して電源を入れます。本体のIPアドレスは192.168.132.1です。ブラウザーからアクセスしてダッシュボードでAPNの設定をします。 APN: rakuten.jp PIN: (空欄) Authentication Type: NONE APNプロトコル: IPv4 ターミナルでアクセス シリアルアクセスするにはルータの殻割りをします。後方のゴム足2箇所と前方の丸シール2箇所を取り外しプラスドライバーでネジを外します。細いマイナスドライバで下からケースの爪を外してカバーを外します。 基盤にはUART用のピンホールが4つ並んでそれを下にして左から3.3v、TX、RX、GNDの配列になっています。PCで USB TTL シリアル 変換等で基盤につなぎターミナルからアクセスします。 *私の環境:macOS、CP2102 U-Boot画面が見えたら適当なキーを押してU-Bootに入ります。 これでターミナルの設定ができ、次からはブートから直接OpenWrtにアクセスできます。 バンド3に固定する ターミナルでNCP-HG100のOpenWrtにアクセスできるようになったらバンドの固定をします。方法は先駆者のやり方通りです。 LTEモジュールをUSB2.0化する LTEモジュール(Telit LN940 A9 LTE CAT-9 M.2)のネジとカバーを外します。カバーはマイナスドライバーで丁寧に外します。LTEモジュールの#29, #31をマスキングすればUSB3.0は無効になるようです。自宅にあるメンディングを使いました。#30,#32は貼りません。 マスキングしたモジュールを再セットします。 最新のOpneWrtをインストールする Stock ROMだと限られた機能しか使えないので最新版のOpenWrtをインストールすることにしました。 先駆者達によってSnapshot版が既にありますが不安定だというレポートしてたので躊躇してました。 ある先駆者の一人で快適に動いているというブログを読んで、USBポートから起動できることもありやってみることにしました。 まずはOpenWrtのソースをダウンロードしてパッチを当てます。 元のパッチ 私の方ではext4のファイルシステムを使えるようにして4GBのUSBディスクを使いました。またカーネルモジュールもネットワーク関係は周りはできるだけ取り込むようにしました。リポジトリからインストールできないのが理由です。 … Continue reading

Posted in OpenWrt | Comments Off on Sony NCP-HG100/CellularにOpenWrtを入れる

デジタルカメラのPhotoにGPSデータを付ける

普段使ってるYamapのサービスでスマホのPhotoを使ってますがあまり綺麗ではありません。そこでデジカメのPhotoを使ってみることにしました。YamapはPhotoの作成時間とGPXデータを照らし合わせて位置情報を取得しています。このアイディアを使ってGPXデータから位置情報を抜き出してJpegのEXIFにGPSデータを書き込もうと言うのが今回の目的です。 GPXデータの位置情報はUTCで統一されています。一方、デジカメはタイムゾーンに合わせたローカル時間で記録されているのですり合わせが必要です。そのローカル時間はテキストデータなので一旦datetimeフォーマットに変換することになりますが、国によってもメーカーによっても表記がバラバラなのでどうか解決するかも悩みの一つです。半分くらいプログラムを書き上げたところで、偶然、私と同じことをしているプロジェクトが見つかりました。 gpx2exif: https://pypi.org/project/gpx2exif/ 使い方 シンプルです。引数にimageの後、GPXデータ、次にJpegファイルです。時差は日本の場合-9hとなります。 使用機会 主に使うところはGooglemapです。他のマップサービスでも使えるところがあるはずです。Photoの整理にも活躍しそうです。 追記: 途中で終わらせるのは嫌だったのでプログラムを完成させました。出来は自分用には十分です。 https://github.com/Neelakurinji123/gpsadd2exif

Posted in Multimedia | Comments Off on デジタルカメラのPhotoにGPSデータを付ける

TerminalImageViewer (tiv)を使ってみる

サーバーに置かれた画像をターミナル経由で見る方法はないものかと考えて検索したらTerminalImageViewerというプロジェクトがありました。このアプリケーションは画像をユニコード・キャラクターに変換して表示できるのでターミナルから見ることができます。GitHubではsnapを使ったインストール方法が紹介されてもますが、サーバはDebianなのでコンパイルしてインストールしました。 表示してみるとユニコードキャラクタの割に綺麗に表示できてました。解像度はもちろん期待できませんが、うまくユニコード・キャラクタを応用してマッピングできています。 ソース https://github.com/stefanhaustein/TerminalImageViewer

Posted in Linux | Comments Off on TerminalImageViewer (tiv)を使ってみる

box86 + wine

arm機でx86のWindowsアプリケーションが動くという情報を得て試して見ました。以前にqemuを使ってWindowsを動かそうと試みたのですが、あまりの遅さで断念したことがあるので、レビュー見る限り期待できそうです。 box86のインストールはarmhfのみなのでarm64には直接インストールできませんがchrootを使えば間接的にインストールができます。 次のサイトの通りにインストールします。 https://forum.armbian.com/topic/16584-install-box86-on-arm64/ 色々試してみたのですがまだ開発途上なので動くアプリケーションも限られますが今後期待できそうです。 どうもAllwinnerはまだ使えません。スタートで取り残されてしまいました。

Posted in Armbian | Comments Off on box86 + wine

OpenWrt: Orange Pi zeroにインストール

ヤオフクでOrange Pi zeroを入手したのでインストール作業に取り掛かりました。Orange Pi zeroはLanポートが100Mbpsなので本命ではないのですが、定評があるモデルなので持っている価値はある上、今ある条件で経験を積んでおきたいということとでやってみることにしました。Allwinner系のSBCはWi-Fi周りが弱いという欠点がありますが、他のルータと比べて処理能力が格段優れています。従来のルーターとこのSBCを組み合わせることで素晴らしい効果が期待できます。 このSBCボードで特にやりたかったことはShorewallの導入です。以前、Armbianに改造したTVBOXのルータで1年程度稼働したのですが、突然eMMCが壊れたという経験をしてから、ルータは極力ストレージアクセスを避けるべきだという方針に変えてました。仕方なく非力なルーターを使わざるを得なかったのですがShorewallを動かすには非力すぎました。そこでOpenWrtに対応する機器を調べていたらAllwinner系のSoCが使えるということがわかり、これを使えばShorewallが使えるのではと考えました。 問題はSBCの入手ですが、元の値段に対してどういうわけかみな高額でなかなかチャンスが見つけられないことが続いてたのですが、偶然ヤオフクでOrange Pi zeroを見つけました。本命ではないのですが、Orange Pi zeroなら今のADSL環境でもスペック的に十分対応可能なので入手することにしました。 入手したボードを調べてみるとv1.5でしたので最新のLTSバージョンということになります。調べたところ前バージョンのv1.4だと発熱の問題があり、あまり宜しくないようです。v1.5(LTS版)は発熱等ほかいくつか不具合が改善されているというアナウンスがされており実際に期待通りの結果でした。 インストールはOpenWrtのサイトからopenwrt-19.07.5-sunxi-cortexa7-sun8i-h2-plus-orangepi-zero-ext4-sdcard.img.gzというファイルをダウンロードしてTFカードに焼き付けるだけです。 TFカードをOrange PiにセットしてUSBケーブルから電源を送り込めばOopenWrtが立ち上がります。リセットボタンが見当たらないのでfailsafeをどうするのかわかりませんが、UARTポートのシリアルアクセスができるのでこれで対処できそうです。参考にログ出力を載せておきます。 LANポートが一つしかないのでVLANを使いました。 レイアウト図です。 VLANの設定はダッシュボードではなく/etc/config/networkを編集します。 OpenWrtのダッシュボードの設定からShorewallに変えてみるとさすがにシンプルで設定が楽です。ダッシュボードだと複雑な設定にすると乱雑になりすぎて間違いやすく、結果やはり変えてよかった思いました。 Post-installation luci-firewallのアンインストール opkg remove –force-depends luci-app-firewall shorewallを有効にする /etc/shorewall/shorewall.conf: STARTUP_ENABLED=Yes /etc/init.d/firewwall disable /etc/init.d/shorewall enable /etc/init.d/shorewall start or reload 参考 https://linux-sunxi.org/Xunlong_Orange_Pi_Zero#Compatibility

Posted in OpenWrt | Comments Off on OpenWrt: Orange Pi zeroにインストール

POP! OS 20.10アップグレードで言語設定の不具合

POP! OS 20.04からPOP! OS 20.10へアップグレードしたところ、言語設定のfcitxの不具合がありました。そこで試しにfcitx5にしてみてもやはり不具合は解消されてませんでした。 原因はおそらく言語設定の変更が追いついていないためだと思いますが、とりあえず使えるようにしました。 fcitx5というのが前から気にかかっていたのですが、今回使えるようにしてみました。fcitxの改良版とでも言うのでしょうか、あまり違いはわかりませんがことのついでに設定してみました。 公式パッケージにはfcitx5-mozcがないので、外部リポジトリからインストールします。 ログアウトして入り直します。 Skinの追加 まだ公式リポジトリにないのでGitHubから導入してみます。テーマを/usr/share/fcitx5/themesにコピーします。fcitx5の設定でThemeを変更します。 参考 https://github.com/xuzhao9/fcitx5-theme-opensuse

Posted in Linux | Comments Off on POP! OS 20.10アップグレードで言語設定の不具合

OpenWrt: 802.11ac の 802.11s + wpa3 sae を使う

前日セットアップしたVxlanが遅すぎて絶望的な気分に浸っていたところで、802.11acで802.11sのメッシュがひょっとしたらできるのではないかと思いつきました。acモードの802.11sは以前に試してみたのですがうまく行きませんでしたが、WG1200CRは比較的新しい機種なのでひょっとしたらと思ったわけです。結論から言うと出来ました。ただし、Mediatekのルーター、WCR-1166DSはWG1200CRにはメッシュは繋がるもののファイル転送に失敗しました。と言うことでacモードの802.11sは機種限定ですが可能だと言うことを発見しました。 wpa3 saeを有効にする パッケージはこれだけです。あとはダッシュボードで802.11sの設定をするのみです。Channelは固定しておきます。 テスト:iperf3 (==: 有線LAN, –: Wi-Fi) PC (macOS) — AP1 == NAS PC (macOS) == AP2 — (802.11s) — AP1 == NAS メッシュネットワーク越えでもそれほど速度低下はなくこれなら使えそうです。 Bug 11ac meshで有効にしたままファームウェアをアップグレードしようとすると失敗する → メッシュを一時的にオフにしてアップグレードする。

Posted in Linux, OpenWrt | Comments Off on OpenWrt: 802.11ac の 802.11s + wpa3 sae を使う

OpenWrt: Vxlanのセットアップ

前回、NEC Aterm WG1200CRにOpenWrtをインストールしました。この機種はヤオフクで手に入れたものですが、実は3台まとめての落札だったので、今回、この3台を使ってネットワーク周りをアップグレードすることにしました。現在のネットワークは11n(2.4GHz)の11s(メッシュ)+WPA3 SAEで、通信速度は150Mbpsです。メッシュネットワークは柔軟性のあるネットワークですが遅いという欠点があります。そこでAPモードを使って11acの性能を引き出そうというのが今回の試みです。 11acのWPA3 SAEのAPモード、Clientモードのネットワーク・セットアップまでは問題ないのですが、子機のClientモードの方が仕様上ブリッジできないという欠点があります。プライベートネットワーク上でnat超えは避けて同一のネットワークを透過的に使いたいところです。いろいろ検討してみたところ、トンネリング・インターフェースを使えば出来そうです。以前にWireGurad上にGreTapをのせてネットワークデバイスをブリッジしました。今回も同じ方法が使えます。 GreTap vs. Vxlan L2ネットワークをトンネリングする方法としてGreTapの他にVxlanがあります。どちらも同じ目的で使いますが、何が違い、どちらがメリットがあるのかが疑問だったので調べてみたところ、Vxlanはudpプロトコルを使い、マルチキャストができることがわかりました。一方、GreTapはユニキャストのみです。ネットワーク同士をつなげるとしたらVxlanの方が有利なのは明らかです。そこで今回はVxlanを採用することにしました。 Vxlanのセットアップ OpenWrtのドキュメントを調べたのですがどうも上手くいきません。そこでGoogleで調べて、何が欠けているのか、情報を収集してみました。 まずパッケージのインストールから始めました。 しかし、これだけでは上手くいかず、前回、GreTapでnat周りのカーネルモジュールをインストールしたことを思い出しました。そこで手当たり次第に関連するカーネルモジュールをインストールしてみました。 AP、Clientの両方の/etc/config/networkに追加します。peeraddrとipaddrはネット環境に合わせて調整します。またインターフェースvxlan0をbr-lan(LAN環境)にブリッジします。 インターフェースのセットアップ wi-fiのセットアップ firewallはVxlan用に作成します。 ネットワークトポロジー ルーター種別 Vxlan: 11acルーター(wi-fi:866Mbps, lan:1Gbps) 11s + wpa3 sae: Atheros router, mt7621以降 (wi-fi:150Mbps, lan:100Mbps) 11s + wireguard + gretap: rt3050, rt5350, mt7620 … Continue reading

Posted in Linux, OpenWrt | Comments Off on OpenWrt: Vxlanのセットアップ

OpenWrt: Aterm WG1200CRにインストール

今回初めてNEC製ルータにOpenWrtをインストールしました。NEC製でOpenWrtをインストールできる機種は3種のみ(2020年11月現在)です。NECのルーターはクオリティが高いという評判なのでいつか使ってみたとは思ってたのですが、人気があるため手に入りづらくなかなかチャンスはありませんでした。たまたまヤオフクで手ごろな製品を見つけたので落札してみました。 この機種はBuffalo WCR-1166DSに近いスペックなのですが、有線LANの1Gbpsが2ポートあります。将来的に光インターネットにした場合、WCR-1166DSのLANポートの100Mbpsではボトルネックの可能性があるので、持っていて損のない製品です。 このWG1200CRのインストールには一つハードルがあり、最新のファームウェアでは直接、OpenWrtがインストールできないということがあります。なので手元届いたら真っ先にこのルーターにアクセスしてファームウェアのバージョンを調べました。幸運にも古いものだったので直接Factoryイメージをインストールできました。なおu-bootからインストールする場合、パスワードがかかってるので解除する必要があります。 通信速度はACモードで今まで使っていたものより1.5倍くらい速い結果でした。ただ、たまたまだったのか、じっくり検証をしてみないと何とも言えません。 その他 hardware/software offload opkgのssl化 /etc/opkg/distfeeds.confを編集してhttp→httpsに変更 SQM 参考 https://tetsupc.wordpress.com/2019/04/07/nec-aterm-wg1200cr/ https://openwrt.org/toh/hwdata/nec/nec_aterm_wg1200cr

Posted in OpenWrt | Comments Off on OpenWrt: Aterm WG1200CRにインストール