1 ポイント 投稿者 GN⁺ 2 시간 전 | 1件のコメント | WhatsAppで共有
  • 脱獄したKindle向けTailscaleに、標準で Tailscale SSH、アプリ別プロキシ、一部端末向けのTUNモードが追加された
  • 通常のKindleでは ユーザー空間モード の制約により、KOReaderが 100.x.y.z のようなtailnetアドレスへ直接接続できなかった
  • 新しいプロキシモードでは、ローカルポートへの SOCKS5・HTTP CONNECT リクエストを tailscaled が受け取り、Calibre、Wallabag など別のtailnetノードへ転送する
  • 専用の KOReaderプラグイン は、KindleだけでなくKoboやPocketBookでも、コンテンツサーバーへのアクセスに必要なプロキシインターフェースを自動生成する
  • 非公式な脱獄環境向けコミュニティコードであるため、端末ごとに互換性の差 があり、インストールと設定は自分で行う必要がある

KUALベースのTailscaleの新しい接続方式

  • 既存クライアントでもKindleをtailnetに登録し、Tailscale IPでアクセスしたりSSHで接続したりできたが、端末のすべてのトラフィックをtailnetへルーティングすることはできなかった
  • 脱獄Kindleでは通常、ユーザー空間ネットワーキング を使うため、端末自体のネットワークルーティング層である TUNモード は利用できない
    • KOReaderが 100.x.y.z への接続を要求しても、Kindle OSにそのTailscale IPへ向かう経路がないため接続が切れてしまう
  • greywolf1499によるKUALアプリ更新 は、これを回避するための複数のモードを追加した
    • プロキシモードでTailscaleを起動した後、KOReaderなどのプロキシアドレスを 127.0.0.1:1055 に設定する
    • ポート1055で待ち受ける tailscaled がリクエストを受け取り、別のtailnet端末へ転送する
    • SOCKS5HTTP CONNECT の両方をサポートし、アプリに合った方式を選べる
  • Tailscale SSH が標準で有効になるため、分かりやすい既定のユーザー名とパスワードを使うUSBnetworking SSHを別途有効化する必要がない
  • 一部のKindleでは 完全なTUNモード を利用して、端末レベルでTailscaleネットワーキングが可能になる
  • プロキシを活用すると、次のようなことができる

KOReader専用プラグイン

  • Tailscale KOReaderプラグイン は、KOReaderの外でTailscale機能を必要としないユーザー向けの代替手段
    • KUALアプリとは異なり、端末自体をtailnetからアクセス可能にするものではない
    • その代わり、KOReaderがコンテンツサーバーに接続するために必要な プロキシインターフェース を自動生成する
    • Kindle PW5・PW6、Kobo、PocketBookでテスト済み
  • 第11世代の通常Kindleは現在 互換性の問題 があり、正常動作は確認されていない
  • インストールと設定は次の手順で行う
    • プラグインをKOReaderのプラグインディレクトリにコピー
    • KOReaderメニューで Install/Update Tailscale を実行
    • Tailscale認証キー を指定ディレクトリにコピーした後、メニューでTailscaleを有効化
    • KOReaderのプロキシを、SOCKS5用の 127.0.0.1:1055 または HTTP CONNECT用の 127.0.0.1:1056 に設定
    • 他のプラグインには接続先サーバーのTailscale IPを入力
  • このプラグインは KOReader向けSyncThingプラグイン と併用することもできる

1件のコメント

 
GN⁺ 2 시간 전
Hacker Newsのコメント
  • KOReader は、ほとんどの電子書籍端末にインストールできる素晴らしいオープンソースのインターフェース。最初は Kobo のバッテリー消費が早くなるのではと心配していたが、まったく問題はなく、好みに合わせて際限なくカスタマイズできるので、読書の快適性の到達点に達したように感じる
    電子書籍端末を使っているなら強く勧めたいし、無償で開発・保守している方々に感謝している

    • 何もかも細かく変えたい人には良いのだろうが、自分には 設定の構造があまりにも複雑だった。フォント・余白・ハイフネーションの設定が、歯車、文書、レンチ、長押しした本の設定のどこにあるのか、さらにタイポグラフィ・画面・スタイル・テキスト・その他のどこへ進めばいいのか分かりにくい
      長距離フライト中に Project Gutenberg の本の表示問題を直そうとして使ってみたが、ハイフネーションを無効にするメニューを見つけるだけで 10 分ほどかかり、正しいメニューにたどり着いても 1~3 ページにわたって何十ものオプションがあった。一方で Kobo の標準リーダーでは、必要な設定が予想どおり最初の場所にまとまっている
      個人の好みではあるが、ファイルエクスプローラー画面 より Kobo や Kindle の標準画面のようなライブラリ方式のほうが好きだ
    • KOReader と BookOrbit の組み合わせは素晴らしく、Calibre など好きなツールを一緒に使ってもよい。設定は面倒だが、一度整えてしまえば最高の読書環境になる
      メイン画面には BookShelf、ヘッダーとフッターの設定には BookEnds を使い、選択したテキストを大規模言語モデルに送って説明・翻訳・カスタム要求を実行する KOAssistant も使っている。Horatio Hornblower シリーズの古い言い回しや馴染みのない航海用語を選んで Explain を押すと、Kindle で数秒のうちに返答を受け取れ、辞書のように使える
      BookOrbit で読書の進捗や注釈、電子書籍を管理し、Claude で ESP32 ベースの電子ペーパーディスプレイを設定して KOReader に表示されたフレーズを交互に表示するようにした。セルフホストのカスタム読書環境 の極みであり、この道を勧めてくれた同僚に感謝している
    • お金を受け取れないのは、支援しないことを選んだときだけ
      https://liberapay.com/KOReader
    • 標準ソフトウェアに特に不満がないので、まだ KOReader をインストールする必要性を感じていないのだが、どんな機能がそんなに良いのか気になる。あればいいなと思った機能は TheStoryGraph と読書進捗を同期すること くらいだ
    • Kobo でも同じように満足している。深くネストされたフォルダ内の本まで全部表示してしまう Kobo 風ホーム画面は惜しいと思っていたが、そのためのプラグインがある: https://github.com/AndyHazz/bookshelf.koplugin
      あとは、ハンズフリー読書用の外付けページめくりデバイスが右端の文字を隠さないようにする 本文余白を空けるスタイルシート のような機能が欲しいだけで、方法を知っている人がいたら教えてほしい
  • 今週 第7世代 Kindle Paperwhite を脱獄 した。最大の不満はダークモードがないことだったが、調べてみると Amazon が提供しないことにしただけだった。KOReader はダークモードを問題なくサポートしており、Kindle の標準ソフトウェアよりずっと高速で即応性が高い
    息子と妻はどちらも第10世代 Paperwhite を使っているが、同じ機種なのに購入時期によるソフトウェア差分のせいで、妻の端末にだけダークモードがある
    さらに KOReader はプラグイン経由で DRM を扱えるので、ついに図書館の電子書籍を借りられるようになった。新しい端末を買わなくても、10年前の端末 でも適切なソフトウェアさえあれば十分によく動く

    • 最新ファームウェアに更新すればよいのではないかと思う
      https://www.amazon.com/gp/help/customer/display.html?nodeId=...
    • どの DRM に対応しているのか気になる。Amazon の本を購入して読めるなら、その DRM プラグインが Amazon 提供のものなのかも知りたい
  • ここまで来たら閾値を超えたので、Kindle を脱獄するとき が来た。バイブコーディングをしない日や少ししかやらない日は、ドーパミン不足のような禁断症状を感じて、X の無意味な投稿を見たり、神経を刺激する何かを探したりするのに時間を使いすぎてしまう
    その時間でたまった RSS リスト を読むほうがよさそうだ

  • KOReader、SSH、Tailscale のどれかが Kindle Oasis のバッテリー寿命 を完全に台無しにし、頻繁な再起動やクラッシュを引き起こしていた。かなり前の実装で経験したことなので、今は改善されているかもしれない

    • いちばん疑わしいのは Tailscale だ。iOS でもかなりバッテリーを消費するし、Android でも同様だ
  • Kindle の古いファームウェアに、Tailscale が TUN 形式のネットワークインターフェースを作るのに必要なカーネル拡張がなくても、ユーザー空間ネットワーキング モードで -tun -userspace-networking を使えばある程度は動かせる
    KOReader の Calibre 設定が localhost:8081 を指しているのを見ると、プロキシも使っていたようだ。設定したのはかなり前だが、実装は可能だ

  • RSS の話が出たついでに、電子書籍端末に向いたフィード のおすすめを知りたい。r/longreads のような内容をイメージしている

  • このスクリプトで tailscaled を実行するときは、少々物騒な名前だが --no-logs-no-support も追加したほうがよい: https://github.com/victoria-riley-barnett/koreader-tailscale...
    そうしないと Tailscale は、Kindle 使用時に接続したホストやポート、接続の開始・終了時刻といった 行動メタデータ を収集する: https://tailscale.com/docs/features/logging#opt-out-of-clien...
    接続内容そのものは暗号化されるが、メタデータだけでも個人についてかなり多くのことが分かってしまう: https://kieranhealy.org/blog/archives/2013/06/09/using-metad...

    • メタデータの記録が気になるなら、Headscale で制御サーバーを自前でホスティング することもできる。収集しないという約束に頼るのではなく、Tailscale を経路から完全に外せる
  • 最初の Kindle をほぼ 10 年使っていたが、バッテリーが膨らんだので中古の Kindle を買い、満足している。使い勝手がよく、スマホアプリから本を共有すれば Kindle に同期されるので、まだ脱獄したいとは思わない
    Tailscale は好きなので、これをインストールできる 完全なオープンソース電子書籍端末 を買うべきなのかもしれない

  • 開発者が Imiron の位置づけを素早く把握できるように、既存の形式手法ツールとの比較 があると役に立ちそうだ

  • Kindle や Kobo で WireGuard を動かす方法 があればいいのに