僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
ここに来た者も徐々に増えてる...のか?ログを見直すと、2月6-7日に googlebotがあちこち掘り返していたが。
man true とか LANG=C man false とかしているうちに ture と false が bash(2.05b.0(1)-releaseで確認)の内部コマンドでもあるらしい事に気づく。 tcsh(tcsh 6.12.01 (Astron) 2003-02-08 (i386-intel-linux) options 8b,nls,dl,al,kan,rh,color,dspm,filec,dspl)にはないらしい。
$ true --help && echo "$?" 0 $ /bin/true --help && echo "$?" Usage: /bin/true [ignored command line arguments] or: /bin/true OPTION Exit with a status code indicating success. These option names may not be abbreviated. --help display this help and exit --version output version information and exit Report bugs to <bug-sh-utils@gnu.org>. 0 $ which true /bin//true
/bin/{true}{false} --version で首をひねった。"Written by no one."って 何だ?
FreeBSD(98)-4.11で見たところ、bash1(1.14.7(1)) とtcsh(tcsh 6.12.00 (Astron) 2002-07-23 (i386-intel-FreeBSD) options 8b,nls,dl,al,kan,sm,rh, color,dspm,filec)にはなさそうだった。
で少し遊ぶ。
UN*X上で使う記事に貼ってあったソースを切り取り、uudecode する。できた
tarballを展開し、gcc -o filename nanba160.c 。
辞書は
Vectorにあるオリジナル版に同梱されている辞書ファイル等をUN*X向けに加工する
(nkf -X -e -d等)。
以下、実行例( -v:標準出力のみ、-sNUM:出力行数、-iDIC:辞書ファイル(拡張子
省略可))。
$ nanba160 -v -s2 -inanba 石燈篭だけが殺すし、大々的にそれにしてもスチュワーデスを手に入れるとは\ サンバのリズムで辛さ3倍でしょう。幼女もウィルスを繰り広げるよーですが\ 狂う時ゲロを吐くなんて信じられません。オリジナリティの野郎が竹輪を切り\ 刻むはずなので謹んで埴輪を買うのだーだーだー。九次元世界の霊格が脳みそ\ 腐るので用心したほうがいいでしょう。 パンチパーマはわななくんでしょーか。火星人はますます呪いを推進し、その\ うち必ず死ぬ必要は別にありません。特に包丁がおののき、陰謀のくせに美し\ いので危険です。何となく能面だってしかも咲き乱れるとゆーことでしょう多分。
他にCGI化などもあるらしい。
貰ったものは全部
こっちにコピーしておいた。
ライセンス的には問題ないだろう(以下、
nanba.doc
(.docだが、Shift-JISのテキスト形式だ)より引用)。
★ 使用条件その他 このソフトを販売して利益を得ることはいけませんが、それ以外であれば使用目 的・使用方法等に関して制限はありませんので御自由にお使いください。ただし このソフトの内容や動作について作者は一切責任を負いません。 このソフトを使って作成した文書を公表する場合、ソフトの使用者が自己の責任 において行なってください。公表した結果何らかのトラブルが発生したとしても 作者は対応いたしかねます。 このソフトはいちいち作者に断らずに他ネット等へ転載してもかまいません。改 造したファイルの再配布や自作辞書ファイル等の発表についても制限はありませ んので、どんどん無断で行なってください。
も一つコピペしようか、と思ったが結局コメントアウト、、、
htmlソースに改行があったりなかったりすると、こういう風に ずれることがある。IE6で発生したが、Firefoxでは (Win,Mac,Linuxとも)出なかった。Safariも同様。 以下、 IE6なブラウザ向けなページ。
上段の画像は三つとも<table><tr>〜</tr></table>の間が
<td> <img src="new.png" width="50" height="50"> </td>
になっているが、下段は真中の画像に限り、
<td><img src="new.png" width="50" height="50"></td>
になっている。
ringサーバからgcc-4.2.3を頂戴して、
LFSでやってみたように
(ソースアーカイブの外から./configureにmake bootstrapする)、
ビルドしてみたが、12時間経っても終わらない。
もちろんscreen(1)環境の中でdetatchしている。
VirtualBox上のPlamo-4.22だけど、やはりこういう処理は
仮想環境の欠点丸出しという気がする。
一度LFSをビルドして、1
SBUがどのくらいの時間に
相当するのか、確認せねばなるまい。
top(1)でVirtualBoxを見ると、常時CPU負荷100%近くを
食い潰している。
が、他のアプリケーション(起動しているのはターミナル
いくつかとw3mとscimとfirefoxぐらいだけど)
に悪影響はほとんど感じられない。
例えば動画再生がもたつくわけでも、コマ落ちするわけでもない。
かな漢字変換やmigemoのレスポンスも、普段と変りはない。
ふつーのスイッチングハブ(Planex FX-05Mini)にPC3台。
一台はふつーの
WinXP、一台は最小構成のEtch、一台はNIC二枚をbridgeしたPlamo-4.22。
合計4本のCAT5を一つのハブに繋ぐ。
WinXPとEtchに同じサブネットの固定IPを振る。
Plamo は tcpdump -n してブリッジを眺める。時折arpが流れる。
Etchから、WinXPにping を流す。
で、WinXPから、同じサブネットの、存在しないIPアドレスに向けて ping する。
するとPlamoに(というか、ホスト全部に)ブロードキャストフレームの嵐。
解決できるはずもないIPアドレスを虚しく探すフレームが怒涛のごとく流れる。
WinXPのping が終了しても終らない。
同時にEtchが送信しているpingも、ぴたりと止った(タイムアウトも何も出ない)。
Plamoから片方のケーブルを抜くとじきに収まる。
WinXPから、Etchにpingすると回復することもあったが、なかなか
収束しないことも。
brctl stp $DEV on すると、障害は発生しなくなった。
NATのフィルタリング。
INPUT、OUTPUT、FORWARD すべてのデフォルトを DROP にする。
NATにDNSサーバ(コンテンツ、キャッシュ)を立てるが、 他所からの問い合わせには応じない。
# iptables -A INPUT -p udp -s $LOCAL_NET --dport 53 -j ACCEPT # iptables -A OUTPUT -p udp -d $LOCAL_NET --sport 53 -j ACCEPT # iptables -A INPUT -p udp --sport 53 -j ACCEPT # iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
念のため、↑のない状態で、かつデフォルトをACCEPTとした設定と
比較しておいた。REFUSEDが返っていたが、閉めた後は
connection timed out になった。
送信元を偽装したDNSアタックの片棒を担ぐ危険性は
減少したはずである。
後は -p tcp で portを 80とかにすればいいはず、かと思ったが、これでは NAT下のノードは、まだ外に出られない。DNSがこれだけで済むのは、鯖が 問い合わせを代行しているからであること を忘れていた。Webを見るためには、こんな設定も必要。
# iptables -A FORWARD -p tcp --sport 80 -j ACCEPT # iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
manを眺めているうちに -m $MODULE_NAME でモジュールを指定して、拡張
できることに気づいた。
例えば、-m multiport で --dport 80,22 とか記述できる。
Raspbianのscratchで、なんやかんや。
GUIは割と分かりやすかったが、制御構造で値評価のタイミングか
何かを勘違いしているらしく、
fizzbuzzの、せめてfizzでもと一時間苦闘して、一休み。
やっぱり1024x768では狭いし。
PPPoEでないとき、Yamahaでどうするのか若干試行錯誤。
ip route default gateway $GW_ADDR ip lan1 address $LAN_ADDR/$MASK ip lan2 address $WAN_ADDR/$MASK ip lan2 nat descriptor $NUM nat descriptor type $NUM masquerade nat descriptor address outer $NUM primary dns server $DNS_SERVER
DHCP関係などは省略。
pppoeサーバ、久々の続き。
$ sudo grep -v "^$\|^#" /etc/ppp/options ms-dns $DNS_SERVER asyncmap 0 auth crtscts lock hide-password modem lcp-echo-interval 30 lcp-echo-failure 4 noipx defaultroute $ sudo grep -v "^$\|^#" /etc/ppp/chap-secrets $USER1 * "$PASS1" $IP_ADDR1 $USER2 * "$PASS2" $IP_ADDR2
後は一発メモ風にnatして、sudo pppoe-server -F -I $LAN する。
nuttcp。名前を思い出せず、www.kuzuore.comを「帯域測定」で 検索してやっと。
PCからルータ(PPPoEクライアント)を伝ってRasPIのPPPoEサーバまで。
$ nuttcp 10.0.0.1 15.2598 MB / 10.15 sec = 12.6095 Mbps 0 %TX 19 %RX 0 retrans 1.68 msRTT
PCからルータとRasPIと、USB接続のWifiと電波と...とを 伝ってwww.kuzuore.comまで(実際はIPで)。
$ nuttcp www.kuzuore.com 2.4112 MB / 13.34 sec = 1.5157 Mbps 0 %TX 1 %RX 0 retrans 30.08 msRTT
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。