今日からちょっとの間、実家に来ております。
その間、「ネット環境がない」ということで、最近流行のPocketWifi…を準備したかったのですが、諸般の事情により入手が困難のため、自分でそれらしいものを作ってみることにしました。
写真:玄箱+FON+EMobile D22HW
この一式を家族に見せたところ「NASでネット?」というポカーンな印象でしたが、玄箱をセットアップしていくうちに、玄箱ルーターが出来上がりました。
玄箱の中身はDebian lenny (kernel 2.6.25)にし、D22HWをUSBポートに差すと以下のように認識されるようにカーネルを再構築しました。
usbcore: registered new interface driver usbserial drivers/usb/serial/usb-serial.c: USB Serial support registered for generic usbcore: registered new interface driver usbserial_generic drivers/usb/serial/usb-serial.c: USB Serial Driver core drivers/usb/serial/usb-serial.c: USB Serial support registered for GSM modem (1-port) usbcore: registered new interface driver option drivers/usb/serial/option.c: USB Driver for GSM modems: v0.7.1
あとは、pppのponコマンドから、emobileというpeerで接続されるよう、以下のように設定します。
[/etc/ppp/peers/emobile] hide-password noauth connect "/usr/sbin/chat -v -f /etc/chatscripts/emobile" debug /dev/ttyUSB0 115200 defaultroute noipdefault user "em" remotename emobile ipparam emobile usepeerdns[/etc/chatscripts/emobile] # ispauth PAP # abortstring ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED # modeminit '' ATZ # ispnumber OK-AT-OK "ATDT*99***1#" # ispconnect CONNECT \d\c # prelogin # ispname # isppassword # postlogin # end of pppconfig stuff
あとは、コマンドで以下のように入力するとUSBに差したEMobile D22HWからダイヤルアップにて接続されます。
root # pon emobile
で、このままだとLAN内のPCがこのNASへルーティングを向けてもネットができないので、簡単なNATを施します。natrouter.shとかにして、すぐコマンドを適用できるようにしてみるのもアリです。
[natrouter.sh] #!/bin/sh iptables -F iptables -t nat -F iptables -t nat -A POSTROUTING -s [NASを含むネットワークアドレス]/24 -o ppp0 -j MASQUERADE iptables -A FORWARD -o ppp0 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
あとは、簡易的にDHCPサーバを構成するために、dhcp3-server をインストールします。
root # apt-get install dhcp3-server
dhcpdの設定をします。
[/etc/dhcp3/dhcpd.conf] ddns-update-style none; option domain-name "mobilewifi.local"; default-lease-time 86400; max-lease-time 172800; subnet 192.168.11.0 netmask 255.255.255.0 { range 192.168.11.101 192.168.11.150; option domain-name-servers 8.8.8.8 , 8.8.4.4; option routers 192.168.11.1; option broadcast-address 192.168.11.255; }
※DNSはもう、GoogleのpublicDNSにお任せ…。(w
あとは、dhcpを起動すれば、LAN内でIPとかゲートウェイ・DNSの設定がdhcpにより割り振られるようになります。
root # /etc/init.d/dhcp3-server start
そんなこんなで、設定後問題もなくいつものようにネットしています。
速度はやっぱり自宅にいるよりは遅いですが(300kくらい)まったくつながらないよりはましでしょうか。
久しぶりに為になった玄箱セットアップでした。