追記

野良犬日記 2.1

RDF/RSS
この日記の検索

最近のツッコミ:


2022-06-20 (Mon) [長年日記]

_ [ahk]AutoHotkey で検索回数を減らすために覚えておくこと

AHK1.1 系の話になるが、だいたい括弧のつくタイプの

 Foo(arg)

は引数が expression なので、変数はそのまま書くし文字列はクオートする。しかし

 Bar, arg

は変数を %var% しなければいけない(ことが多い)し文字列はそのまま書く(ことが多い)。

つまり

 Foo(var, "v=" v)

 Bar, %var%, v=%v%

みたいな感じになることが多い。そのままだと頭が混乱するので、

 Foo(var, "v=" v)
 Bar, % var, % "v=" v

というように書き方を似せておくと書きやすい。

これまでは毎回 expression かどうかを調べていたけど、 これだけで調べる回数が大幅に減った。

それでも意味の分からない仕様が多くて面倒なことに変わりはないが。


2022-05-02 (Mon) [長年日記]

_ [music] SCLL の既視感

今頃になって Spangle call Lilli line というバンドを知った。

英語みたいに聞こえる日本語、のような実際には日本語ですらないような歌詞が付いていて面白い。

I know you can be って言ってるのかと思わせて、やっぱり「あの花瓶」かな、と思わせておいて、「あの過敏揺らす日 わずかに」って何やねん。

そんな歌詞なので、他のことに集中していると無視できて作業用 BGM に良いし、あとから歌詞をチェックすると笑える。

でも、こういうの初めてというよりは、どこかで見たことあるな~、と思っていた。

その既視感が今ちょうど分かった。これ自動文字起こし (の失敗) で見るやつだ。昔は多かったし、今でも滑舌の悪い日本語 YouTube 動画で見ることができる。

「……するとUIが全て日本語になります」と言っている動画の字幕が「……するという愛が全て日本語になります」と表示されたのを見た瞬間、ビビッと来た。

あ~すっきりした。


2021-07-25 (Sun) [長年日記]

_ [srv]OpenWRTで直接公開する

古い PC とか使うと熱暴走が怖いし、いろいろ面倒になってきたので、OpenWRT 自体を公開しちゃう方法も調べてみた。(そのまま公開するかどうかは保留中)

WAN が一つなら問題ないけど、普段 IPv6 / DS-Lite を出口にしつつ、PPPoE への要求にだけ (DS-Lite 側じゃなくて) PPPoE 側で答えるようにするのは結構難しかった。

iptables で mark 付けたりして、うまくできるのかもしれないけど、よく分からなかった。

mwan3

けっきょく mwan3 を使った。

DS-Lite と PPPoE に metric を振っておいて、policy と rule を作っていく。

ぜんぶ書きかえるのは面倒だったので、PPPoE は wanb_only という policy、DS-Lite 優先は wan_wanb という policy を流用した。

ルールは順番が大事なので、

config rule 'httpd'
       option dest_ip '0.0.0.0/0'
       option family 'ipv4'
       option proto 'tcp'
       option src_ip '192.168.1.1'
       option src_port '8080,8443'
       option sticky '0'
       option use_policy 'wanb_only'

config rule 'default_rule_v4'
       option dest_ip '0.0.0.0/0'
       option family 'ipv4'
       option proto 'all'
       option sticky '0'
       option use_policy 'wan_wanb'

みたいな感じで、特例を先に書くみたい。

firewall

あとは普通に firewall で

config rule
       option name 'Allow-HTTP'
       option src 'pppoe'
       option family 'ipv4'
       option proto 'tcp'
       option dest_port '80 443'
       option target 'ACCEPT'

config redirect
       option name 'http'
       option src 'pppoe'
       list proto 'tcp'
       option src_dport '80'
       option dest_port '8080'
       option dest 'lan'
       option target 'DNAT'
       option dest_ip '192.168.1.1'

みたいな感じでいいんじゃないかな。

lan から pppoe を通って出られるようになっていれば、 pppoe の zone の既定では input も forward も ACCEPT する必要がない。 いまどき input 開けてて問題なのかどうかは知らない。

uhttpd

LuCI を公開することはないだろうから、uhttpd は listen_http='0.0.0.0:80' になっているのを '192.168.1.1:80' とかに絞っておくほうが分かりやすそう。 私なら、そうしておいても絶対どっちがどっちか分からなくなる気がするけど。

ddns と acme

LuCI で ddns の設定をしたりステータス確認ができたりするのは、やっぱり楽。

Let's encrypt の acme も LuCI から設定できるみたいだけど、こちらはディスクが一杯になりそうだから試していない。acme っていうパッケージを入れて設定ファイルから手作業でやって /etc/init.d/acme start して数分後に logread するのも、そんなに手間ではない。


2021-02-28 (Sun) [長年日記]

_ [srv]OpenWRTでDMZ専用PPPoE接続を併設

Atermには無線だけ担当してもらって、 細かいことはOpenWRTにやってもらおうと思う。

transixまでは情報も多く、すんなりできた。

IPv6でDNSサーバ指定とかを広告している仕組みがわからず 曖昧に済ませている部分もあるが、とにかく通信はできてる。

悩んだけど、wanと同じ場所(eth0.2だったかな)に pppoeインタフェースも作れて、ddnsも動いた。

メトリックが同じだと普通にそっちを使われてしまいかねないので、 PPPoEのメトリックは少し大きい数字にしておいた。

で、物理ポートの一つをbr-lanから除外しvlanを分けて、 固定アドレスを与えるようにしてから そこにポートフォワード等を設定したんだけど、 LAN内しか通信できなかった。

たしかに、これだけだと出口がないから仕方ないか。 とはいえ、面倒な設定が必要なのはイヤだなとか、 mwan3というのが必要になるのかとか考えつつ調査した。

結果、どうも(L)uCiでは対応していないが、 mwan3など別パケジは不要らしかった。

ip routeでdevを指定するということで、 https://blog.misosi.ru/2019/12/02/openwrt-mape の最後の方にあるようなスクリプトを作って、やっと通じた。


2021-01-24 (Sun) [長年日記]

_ 数十人規模のzoom会議だとatermルータのせいで音が切れる?

image 1~10人ぐらいのzoom会議なら何も問題ないみたいなんだけど、 30人ぐらいになってくると音が切れやすい気がする。 話し始めが消えていることが多いけど、途中で切れているときもある。 映像は動いているのに音だけ止まる、ということも多い。

よく分からないけど、aterm wg1900hp2 にしてからこういうことが多い気がする。 naptタイマーを短くしても解消されなかった。 zoomはudpがだめならtcpで接続してくれるというので、試しにudpの8801をブロックしてみたら安定した。

でも画面共有とかでは不安定なときがあるんだよなあ。 画面共有からギャラリービューに戻るときは特に、udpよりすごく遅いし。

これならスマホ4gの方が安定してるんだけど、どうしてくれようか。 処理速度がボトルネックってわけじゃないなら、古いルータにopenwrtでも入れて調整しようかな。


2002|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|10|11|12|
2011|02|04|05|06|07|08|09|10|11|12|
2012|01|03|04|05|06|09|11|12|
2013|02|03|09|10|11|
2014|02|03|04|06|09|
2015|11|
2016|01|04|09|10|
2017|04|05|07|
2018|04|08|12|
2019|07|08|10|
2020|04|05|06|07|08|
2021|01|02|07|
2022|05|06|