netcatでTCPプロキシー
netcatには種類があるらしい。
http://d.hatena.ne.jp/EijiYoshida/20111109/1320800716
Cygwinで入れたらOpenBSD版のよう。こいつでHTTPをプロキシする。
このあたりを参考にした。バックパイプというのを初めて知った。
http://notes.tweakblogs.net/blog/7955/using-netcat-to-build-a-simple-tcp-proxy-in-linux.html
$ mkfifo fifo
$ while :; do nc -k -l 10080 < fifo | nc 127.0.0.1 80 > fifo; done
Ubuntuの場合 -q 1 で少し待たせる必要がある。
$ mkfifo fifo
$ while :; do nc -q 1 -k -l 10080 < fifo | nc -q 1 127.0.0.1 80 > fifo; done
通信内容をin, outファイルに保存させる場合。
$ while :; do nc -k -l 10080 < fifo | tee -a in | nc 127.0.0.1 80 | tee -a out > fifo; done
別のCygwinを2つ開いて通信内容を表示させる。
$ tail -f in
$ tail -f out
少し不安定だが、とりあえず使える。
終わったら fifo を消しておく。
$ rm fifo