linuxマシンのルータ化 その1 NICドライバのインストール
普通に使う分には市販のブロードバンドルータでも十分ですが、ネットワークの実験をする際にはDMZ等の設定の機能が不十分と感じました。そこで、Linuxが入ったノートPCのThinkPad T30をルータ化させようと思います。
Step1 ドライバに関する情報の入手
ルータとして使うには、NICが2枚ほしいところです。しかし、ノートPCには1枚しかNICがありません。そこでUSB経由の外付けNICを認識させます。
今回買ったのは、LAN-GTJU3です。完全に勢いで買いました。本来WindowsもしくはMAC用なので、Linuxで認識してくれるかは完全に不明です。
まずドライバをマシンに入れなくてはなりません。lsusbコマンドや/var/log/messagesファイルを見たのですが、必要なドライバに関する情報が手に入りません。そこで方針を変えてWindowsに差してみました。
どうやらAX88179らしいです。ASIX Electronics Corpのホームページからドライバを落としてきます。それをコンパイルします。Linux kernel 2.6.14 以降から利用可能らしいので、利用できるはずです。
Step2 ドライバのダウンロード&コンパイル
[root@new-host ~]# mkdir AX88179 [root@new-host ~]# cd AX88179/ [root@new-host AX88179]# wget http://www.asix.com.tw/FrootAttach/driver/AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE.tar.bz2 --2013-03-10 23:18:19-- http://www.asix.com.tw/FrootAttach/driver/AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE.tar.bz2 www.asix.com.tw をDNSに問いあわせています... 113.196.140.82, 210.243.224.51 www.asix.com.tw|113.196.140.82|:80 に接続しています... 接続しました。 HTTP による接続要求を送信しました、応答を待っています... 200 OK 長さ: 13920 (14K) [application/x-tar] `AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE.tar.bz2' に保存中 100%[======================================>] 13,920 63.6K/s 時間 0.2s 2013-03-10 23:18:19 (63.6 KB/s) - `AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE.tar.bz2' へ保存完了 [13920/13920] [root@new-host AX88179]# ls AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE.tar.bz2 root@new-host AX88179]# tar jxvf AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE.tar.bz 2 AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/ AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/asix.h AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/Makefile AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/ax88179_178a.c AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/readme [root@new-host AX88179]# ls AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE.tar.bz2 [root@new-host AX88179]# cd AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE [root@new-host AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE]# ls Makefile asix.h ax88179_178a.c readme [root@new-host AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE]# make make -C /lib/modules/2.6.32-279.el6.i686/build SUBDIRS=/root/AX88179/AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE modules make[1]: ディレクトリ `/usr/src/kernels/2.6.32-279.el6.i686' に入ります CC [M] /root/AX88179/AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/ax88179_178a.o Building modules, stage 2. MODPOST 1 modules CC /root/AX88179/AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/ax88179_178a.mod.o LD [M] /root/AX88179/AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/ax88179_178a.ko.unsigned NO SIGN [M] /root/AX88179/AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE/ax88179_178a.ko make[1]: ディレクトリ `/usr/src/kernels/2.6.32-279.el6.i686' から出ます
特に問題なくダウンロードからコンパイルまで完了しました。
Step3 ドライバのインストール
この後は、先ほど作成したax88179_178a.koをインストールします。ライブラリにコピーして依存関係の解消です。
[root@new-host AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE]# cp ax88179_178a.ko /lib/modules/2.6.32-279.el6.i686/kernel/drivers/net/usb/ [root@new-host AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE]# depmod -a [root@new-host AX88179_178A_LINUX_DRIVER_v1.3.0_SOURCE]# chmod +x /lib/modules/2.6.32-279.el6.i686/kernel/drivers/net/usb/ax88179_178a.ko