ChatGPTの話。
翻訳機能が無効化されたYouTubeの英語ライブ配信を、Windows11のライブキャプションで英文出力して、それを自動翻訳できないかなーと考え、AIに相談してみた。
おっマジかこんな事できるんだEnable-WinEventingMicrosoftProvider
とか初めて聞いたわちょっとググってみるか
めっちゃ堂々と嘘つくやん?
コード自体はまぁそうだよねってコードだけど、色々創作してて逆にすげぇなと思った。
というメモ。
何もかも忘れた頃にやる作業なのでメモ。
OpenWRTの最新イメージをダウンロード
最新リリース(例:22.03.5) -> targets -> x86 -> 64 -> generic-ext4-combined-efi.img.gz
64
からでいいgeneric
imgファイルをvhdx形式に変換
gunzip
、qmem-img
が必要cd /mnt/c/Users/ukichi/Downloads/ gunzip -k openwrt-*.img.gz qemu-img resize -f raw openwrt-*.img 1G qemu-img convert openwrt-22.03.5-x86-64-generic-ext4-combined-efi.img -O vhdx openwrt-22.03.5-x86-64-generic-ext4-combined-efi.vhdx
/dev/sda2をぐいっと広げる
前回の続き。
DirectモードでExit Nodeと接続されるようになったので、Exit Node経由でインターネット速度を測ってみた。
https://www.speedtest.net/ja/result/14951527618
結果、ダウンロード 18.65Mbps、アップロード 96.95Mbps。 ずいぶん偏りがある。
Exit Nodeに使ったのは激安3万円PCなのだけど、ダウンロードとアップロード、それぞれどのPCがどんな暗号化処理をしているのだろうか。
少し時間がかかりそうなので、調べるぞという気持ちを固めるために、ここに書き残しておく。
と書いてから2週間、結果が得られたので書く。
iperf3から。
# iperf3 -c C拠点PC4 Connecting to host C拠点PC4, port 5201 [ 5] local B拠点PC3 port 56794 connected to C拠点PC4 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-1.00 sec 13.1 MBytes 110 Mbits/sec 9 466 KBytes [ 5] 1.00-2.00 sec 13.3 MBytes 112 Mbits/sec 33 355 KBytes [ 5] 2.00-3.00 sec 10.7 MBytes 89.6 Mbits/sec 26 283 KBytes [ 5] 3.00-4.00 sec 8.88 MBytes 74.4 Mbits/sec 0 309 KBytes [ 5] 4.00-5.00 sec 10.6 MBytes 88.5 Mbits/sec 0 324 KBytes [ 5] 5.00-6.00 sec 10.5 MBytes 88.0 Mbits/sec 0 341 KBytes [ 5] 6.00-7.00 sec 8.88 MBytes 74.5 Mbits/sec 6 276 KBytes [ 5] 7.00-8.00 sec 9.68 MBytes 81.2 Mbits/sec 0 308 KBytes [ 5] 8.00-9.00 sec 10.5 MBytes 88.0 Mbits/sec 0 330 KBytes [ 5] 9.00-10.00 sec 10.5 MBytes 88.0 Mbits/sec 0 342 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 107 MBytes 89.4 Mbits/sec 74 sender [ 5] 0.00-10.00 sec 105 MBytes 88.2 Mbits/sec receiver iperf Done.
早ッ!次ッ!Ookla Speedtest!
早ッッ!!次ッ!!Ookla Speedtest中のExit Node負荷ッ!!
古いCeleronでも余裕ッ!!!もうこれでヨシッ!!!
実用になりそうな結果は得られたものの、理由がよくわからない。 なぜASAHINETでは遅く、NUROだと普通なのか。 DS-LiteとNUROの違いだろうか。 はて。
前回の続きです。
tailscale status
コマンドで接続状況を把握。
Windowsでもコマンドラインから使えます。
>tailscale status 100.64.xxx.xxx pc03 username@ windows active; offers exit node; relay "tok", tx 192355640 rx 5935112
relay "tok"
という表示。
Tailscale will either connect your nodes directly or via a DERP relay.
Tailscale runs DERP relay servers distributed around the world to link your Tailscale nodes peer-to-peer as a side channel during NAT traversal, and as a fallback in case NAT traversal fails and a direct connection cannot be established.
なるほど、中継サーバーを経由する接続であれば、遅いのも納得。 では中継サーバーを経由しない方法は?
My devices are using a relay. What can I do to help them connect peer-to-peer?
If two of your devices are on difficult networks, allowing connections to UDP port 41641 on one of them may help Tailscale make a peer-to-peer connection, rather than falling back to a relay.
なるほど、UDP:41641からの発信を通すように構成すればよいと。 Windowsパソコンの場合はWindowsファイアウォールに自動的に設定が追加されているようですが、ダメなら手動で追加しましょう。 パソコン、ルーターともに、ファイアウォールなどでUDP:41641からの発信を許可し、テスト。
まずはrelayモードで接続されているときの結果。
>iperf3 -c 同一LAN内にあるpc03のTailscale IPv4 アドレス Connecting to host 100.64.xxx.xxx, port 5201 [ 4] local 自分のPCのTailscale IPv4 アドレス port 57386 connected to pc03のTailscale IPv4 アドレス port 5201 [ ID] Interval Transfer Bandwidth [ 4] 0.00-1.01 sec 1.12 MBytes 9.38 Mbits/sec [ 4] 1.01-2.01 sec 1.12 MBytes 9.40 Mbits/sec [ 4] 2.01-3.00 sec 2.62 MBytes 22.2 Mbits/sec [ 4] 3.00-4.00 sec 3.12 MBytes 26.3 Mbits/sec [ 4] 4.00-5.01 sec 2.62 MBytes 21.8 Mbits/sec [ 4] 5.01-6.01 sec 2.88 MBytes 24.2 Mbits/sec [ 4] 6.01-7.01 sec 3.62 MBytes 30.4 Mbits/sec [ 4] 7.01-8.00 sec 4.50 MBytes 37.9 Mbits/sec [ 4] 8.00-9.01 sec 6.00 MBytes 50.2 Mbits/sec [ 4] 9.01-10.01 sec 4.62 MBytes 38.7 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 4] 0.00-10.01 sec 32.2 MBytes 27.0 Mbits/sec sender [ 4] 0.00-10.01 sec 32.1 MBytes 26.9 Mbits/sec receiver
次に、directモードで接続されているときの結果。
>tailscale status 100.64.xxx.xxx pc03 username@ windows active; offers exit node; direct IPv4かIPv6アドレス:41641, tx 192355640 rx 5935112
おお、41641って表示された。効いてそう。
>iperf3 -c 同一LAN内にあるpc03のTailscale IPv4 アドレス Connecting to host 100.64.xxx.xxx, port 5201 [ 4] local 自分のPCのTailscale IPv4 アドレス port 61603 connected to pc03のTailscale IPv4 アドレス port 5201 [ ID] Interval Transfer Bandwidth [ 4] 0.00-1.00 sec 11.0 MBytes 91.8 Mbits/sec [ 4] 1.00-2.01 sec 12.0 MBytes 101 Mbits/sec [ 4] 2.01-3.00 sec 15.1 MBytes 128 Mbits/sec [ 4] 3.00-4.01 sec 16.4 MBytes 137 Mbits/sec [ 4] 4.01-5.01 sec 16.1 MBytes 135 Mbits/sec [ 4] 5.01-6.00 sec 16.2 MBytes 137 Mbits/sec [ 4] 6.00-7.01 sec 16.1 MBytes 135 Mbits/sec [ 4] 7.01-8.00 sec 15.9 MBytes 133 Mbits/sec [ 4] 8.00-9.00 sec 16.4 MBytes 138 Mbits/sec [ 4] 9.00-10.00 sec 16.2 MBytes 136 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 4] 0.00-10.00 sec 152 MBytes 127 Mbits/sec sender [ 4] 0.00-10.00 sec 151 MBytes 127 Mbits/sec receiver
やったー!別次元! 暗号化なしの速度には遠く及ばないけど、同一LAN内で100Mbps超えれば上等上等。
Tailscaleの速度が思うように出ないというメモ。
全PC、同一ノードに参加。
まずはA拠点PC同士でiperf3。サーバーは性能が低い方で。なんとなく。
>iperf3.exe -c A拠点PC2(拠点内LAN) Connecting to host A拠点PC2(拠点内LAN), port 5201 [ 4] local A拠点PC1(拠点内LAN) port 60277 connected to A拠点PC2(拠点内LAN) port 5201 [ ID] Interval Transfer Bandwidth [ 4] 0.00-1.00 sec 113 MBytes 949 Mbits/sec [ 4] 1.00-2.00 sec 113 MBytes 949 Mbits/sec [ 4] 2.00-3.00 sec 113 MBytes 946 Mbits/sec [ 4] 3.00-4.00 sec 113 MBytes 948 Mbits/sec [ 4] 4.00-5.00 sec 112 MBytes 944 Mbits/sec [ 4] 5.00-6.00 sec 109 MBytes 916 Mbits/sec [ 4] 6.00-7.00 sec 108 MBytes 908 Mbits/sec [ 4] 7.00-8.00 sec 113 MBytes 946 Mbits/sec [ 4] 8.00-9.00 sec 113 MBytes 948 Mbits/sec [ 4] 9.00-10.00 sec 113 MBytes 949 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 4] 0.00-10.00 sec 1.09 GBytes 940 Mbits/sec sender [ 4] 0.00-10.00 sec 1.09 GBytes 940 Mbits/sec receiver iperf Done.
ええやん。まー暗号化されてないから。
次、同じ組み合わせでTailscale接続経由。
>iperf3.exe -c A拠点PC2(Tailscale) Connecting to host A拠点PC2(Tailscale), port 5201 [ 4] local A拠点PC1(Tailscale) port 60220 connected to A拠点PC2(Tailscale) port 5201 [ ID] Interval Transfer Bandwidth [ 4] 0.00-1.01 sec 17.5 MBytes 146 Mbits/sec [ 4] 1.01-2.00 sec 17.0 MBytes 143 Mbits/sec [ 4] 2.00-3.00 sec 17.5 MBytes 147 Mbits/sec [ 4] 3.00-4.00 sec 17.8 MBytes 149 Mbits/sec [ 4] 4.00-5.00 sec 17.8 MBytes 149 Mbits/sec [ 4] 5.00-6.00 sec 17.9 MBytes 150 Mbits/sec [ 4] 6.00-7.00 sec 17.6 MBytes 148 Mbits/sec [ 4] 7.00-8.00 sec 18.1 MBytes 152 Mbits/sec [ 4] 8.00-9.00 sec 14.6 MBytes 123 Mbits/sec [ 4] 9.00-10.00 sec 11.6 MBytes 97.8 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 4] 0.00-10.00 sec 167 MBytes 140 Mbits/sec sender [ 4] 0.00-10.00 sec 167 MBytes 140 Mbits/sec receiver iperf Done.
この数字をどう見るか。 個人的には運用上問題ないけど思ったより遅い。
この測定結果は同じルーターから出入りしてるけど、ルーター2台使って違うルーターを経由して同じHGWから出る構成でも結果は同じだった。どこでどう折り返しているのだろうか。
次、拠点間。B拠点PC3からA拠点PC2へ。
>iperf3.exe -c A拠点PC2(Tailscale) Connecting to host A拠点PC2(Tailscale), port 5201 [ 4] local B拠点PC3(Tailscale) port 55513 connected to A拠点PC2(Tailscale) port 5201 [ ID] Interval Transfer Bandwidth [ 4] 0.00-1.00 sec 2.75 MBytes 23.0 Mbits/sec [ 4] 1.00-2.00 sec 3.88 MBytes 32.6 Mbits/sec [ 4] 2.00-3.01 sec 4.12 MBytes 34.1 Mbits/sec [ 4] 3.01-4.01 sec 4.25 MBytes 35.9 Mbits/sec [ 4] 4.01-5.01 sec 4.88 MBytes 40.8 Mbits/sec [ 4] 5.01-6.01 sec 5.38 MBytes 45.0 Mbits/sec [ 4] 6.01-7.01 sec 5.25 MBytes 44.4 Mbits/sec [ 4] 7.01-8.01 sec 3.50 MBytes 29.4 Mbits/sec [ 4] 8.01-9.00 sec 4.00 MBytes 33.7 Mbits/sec [ 4] 9.00-10.00 sec 4.00 MBytes 33.5 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 4] 0.00-10.00 sec 42.0 MBytes 35.2 Mbits/sec sender [ 4] 0.00-10.00 sec 42.0 MBytes 35.2 Mbits/sec receiver iperf Done.
えぇ・・・遅い・・・
なぜなのか。
なおA拠点PC1をサーバーにしたら、さらに悪化した。
[ 4] 0.00-10.00 sec 17.9 MBytes 15.0 Mbits/sec sender [ 4] 0.00-10.00 sec 17.8 MBytes 14.9 Mbits/sec receiver [ 4] 0.00-10.00 sec 23.0 MBytes 19.3 Mbits/sec sender [ 4] 0.00-10.00 sec 22.9 MBytes 19.2 Mbits/sec receiver [ 4] 0.00-10.00 sec 22.0 MBytes 18.5 Mbits/sec sender [ 4] 0.00-10.00 sec 21.9 MBytes 18.4 Mbits/sec receiver
なぜなのか。 A拠点PC2にサーバーを戻してみる。
[ 4] 0.00-10.01 sec 54.9 MBytes 46.0 Mbits/sec sender [ 4] 0.00-10.01 sec 54.8 MBytes 46.0 Mbits/sec receiver [ 4] 0.00-10.01 sec 45.2 MBytes 37.9 Mbits/sec sender [ 4] 0.00-10.01 sec 45.2 MBytes 37.9 Mbits/sec receiver [ 4] 0.00-10.00 sec 53.1 MBytes 44.6 Mbits/sec sender [ 4] 0.00-10.00 sec 53.1 MBytes 44.6 Mbits/sec receiver
えぇ・・・再現性あんの・・・どゆこと・・・逆ならまだしも・・・
それぞれの拠点でooklaのスピードテストしても上下数百Mbps出てる。
Tailscaleの端末間通信はChaCha20-Poly1305を使うP2Pと理解している。ので、経路ボトルネック最小となる同一拠点Tailscale端末間通信は、消去法的に暗号化負荷が支配的になると思う。
まー他拠点からでもそんなに速度はへこまんであろう、くらいに思ってたのです。根拠ないけど8割程度は出るだろうと。
でもこの結果を見ると全然そうはなっておらず、見えてはいないがしかし確固たる何かがありそう。へっぽこスペックの端末のが速いってのも、わからない。
さてどこにボトルネックがあるのやら。
ボトルネックの探し方から探す感じかね・・・
メールはだいぶ前からgmailに統一済みであるものの、2GB以上のBeckyデータフォルダをプログラムファイルと共に維持していたが、バックアップやリストアでメールデータにアクセスするたびにスパムメールに仕込まれた際どいコードにセキュリティソフトが反応してしまい、それ対処するのが億劫になってきたので、前世紀からの遺物を現行データにマージし、Beckyデータはフォルダごと供養することにした。
諸先輩方の貴重な記録によると Outlook Express や Windows Live mail を使う方法があるようだが、時は世紀末ならぬ2018年でありWindows 10 であり 「Windows Essentials 2012 スイートのサポートは 2017 年 1 月 10 日に終了しました。」でありそらそうよであるので、代替手段を探し、実行した。
やりたいこと
・メールについて、Beckyのフォルダ構造を保ち、GmailとOutlookに移行する
・アドレス帳はわりとどうでもいい
基本的な考え方
・Beckyでメールのフォルダ構造を保ちつつエクスポート
・移行先にインポートできる形式に変換
・移行先にインポート
つかったもの
・CircleBecky( 窓の杜 https://www.vector.co.jp/soft/win95/net/se252604.html )
・MailStore Home( 窓の杜 https://forest.watch.impress.co.jp/library/software/mailstore/ )
実際の作業の流れ
・適当な場所(たとえばデスクトップ)に、エクスポートするデータを置くためのフォルダ(たとえばExport)を作る
・BeckyにCircleBeckyプラグインをインストール(プラグインの設定は変更なしでOK)
・Beckyでエクスポートしたいメールボックスを右クリックし、「拡張エクスポート...」をクリック
・先ほど作ったフォルダを指定
・メールボックス名でフォルダが作成され、その中にeml形式でデータがエクスポートされる
・メールボックスの数だけ繰り返す
・MailStoreで左側にある「Eメールのアーカイブ」から、右側にある「EMLファイルおよびMSGファイル」をクリック
・「参照」ボタンから、エクスポートしたメールボックス名のフォルダを指定する
・「次へ」「終了」をクリックする
・
感想
・CircleBeckyでフォルダ構造を保つ形式でエクスポートさえできれば、以降の行程で使えそうなツールは複数ありそう。
・逆に言えば、Beckyが動く環境で動くCircleBeckyが入手できなくなると詰む。
・MailStore Homeがとても優秀。旧来のメールクライアントはもとより、GmailやExchange、IMAP、POP3からのアーカイブ(インポート)に対応しているので、クラウド上のメールデータをPCにダウンロード、保管しておく用途にも使える。
・MailStoreからExchangeやGmailへのデータ移行は遅い。Exchangeはメールサイズに応じた速度で転送されるが、Gmailは1通1秒程度かかっていた。場合によっては数十時間かかると思う。