Ubuntu 11.10 と LG L-05A, vpnc

L-05A 設定

/lib/udev/rules.d/40-usb_modemswitch.conf のLG L-05A向けの行を以下の通り編集

# LG L-05A
# ATTRS{idVendor}=="1004", ATTRS{idProduct}=="613a", RUN+="usb_modeswitch '%b/%k'"
ATTRS{idVendor}=="1004", ATTRS{idProduct}=="6124", RUN+="usb_modeswitch '%b/%k'"

udev再起動(service udev restart)後にモデムをUSBに差し込むとcdromとして認識される。対応するデバイスファイル(/dev/sg2など)を eject してモデムとして認識させる(lsusb で 1004:613a -> 1004:6124となり、/dev/ttyACM[012] が見えるようになる)。元の設定でもうまくいくこともあるけど大抵はうまくいかないので上記の手段を踏んでいる。ひょっとしたらもとの設定をはずすだけでいいのか知らん。

vpnc

何となくつながるものの、接続が不安定で再接続しようにも

Error: either "to" is duplicate, or "ipid" is a garbage.

などと出て動かない。ぐぐっていると同じく困っていた人のスレッドとその対応策を発見。

Google does spit out one thread on LKML (sorry I haven't done this right away, but I had very little time and it seemed like a kernel regression to me). Apparently, they changed the output of "ip route get", and as vpnc calls some shell script (/etc/vpnc/vpnc-script) which parses ip's output with sed, this fails. There already exists a bug report. The LKML thread suggests replacing line 119 in vpnc-script with

sed 's/cache//;s/metric \?[0-9]\+ [0-9]\+//g;s/hoplimit[0-9]\+//g;s/ipid 0x....//g'

http://aptosid.com/index.php?name=PNphpBB2&file=viewtopic&t=1295

ip route コマンドの出力が Linux 2.3.39 ? から変わったためで、/etc/vpnc/vpnc-script の119行めを上記のとおり書き換えてみてはとのこと。で試してみると困っていた事象は発生しなくなった。