tsocksで任意のコマンドをsocks proxy経由で実行

地味に便利だなー。

pingはsocks経由にできなかった??

install

debianはaptでinstall。

# apt-get install tsocks

使い方1

tsocksコマンドの後に、socks経由で実行するコマンド(+引数)を指定。

$ tsocks telnet 10.0.0.100
$ tsocks telnet 10.0.0.100 80

使い方2

tsocks -on,tsocks -offで環境変数を切り替えて実行。環境変数はtsocks -shで確認できる。echoしてもいいけど。

$ /usr/bin/tsocks -on  # LD_PRELOAD="/usr/lib/libtsocks.so"
$ telnet 10.0.0.100
$ telnet 10.0.0.100 80
$ /usr/bin/tsocks -off # LD_PRELOAD=""

LD_PRELOADの説明はここ

LD_PRELOAD という環境変数に、共有オブジェクトを指定すると
任意のプログラムを実行する時にその共有オブジェクトを読み込ませる事が出来るらしい。