追加したIntelのNICが動かない件
driver名:e1000e:Network Adapter Driver for PCI-E Gigabit Network Connections under Linux*
以下の通りにやったらできた(source)
- ドライバ CD の 'Linux/Source/base_driver/e1000e-<x.x.x>tar.gz' からベース ドライバの tar ファイルを選択したディレクトリにコピーします。<x.x.x> は、ドライバの tar ファイルのバージョン番号です。 たとえば、 '/home/username/e1000e' または '/usr/local/src/e1000e' などが使用できます。
- アーカイブを解凍します。(<x.x.x> は、ドライバ tar のバージョン番号です。)
tar zxf e1000e-<x.x.x>.tar.gz
- ドライバの src ディレクトリに変更します。(<x.x.x> は、ドライバ tar のバージョン番号です。)
cd e1000e-<x.x.x>/src/
make install
バイナリが以下のとおりインストールされます。
/lib/modules/<カーネル バージョン>/kernel/drivers/net/e1000e/e1000e.ko
上記のインストールの場所はデフォルトの場所です。 使用している Linux によっては、上のインストール場所が適切でない場合もあります。 詳細については、ドライバの tar ファイルに含まれている ldistrib.txt ファイルを参照してください。
- insmod または modprobe コマンドを使用してモジュールをインストールします。
modprobe e1000e
insmod e1000e
注: 2.6 カーネルでは、ドライバ モジュールのフルパスが指定された場合に insmod を使用できます。 例:
insmod /lib/modules/<カーネル バージョン>/kernel/drivers/net/e1000e/e1000e.ko
- 2.6 ベースのカーネルでは、新しいモジュールを読み込む前に古い e1000e ドライバがカーネルから削除されていることを確認してください。
rmmod e1000e; modprobe e1000e
- 以下のように入力してイーサネット インターフェイスに IP アドレスを割り当ててアクティブにします。(<x> はインターフェイス番号です。)
ifconfig eth<x> <IP アドレス>
- インターフェイスが機能することを確認します。 以下のように入力します。(<IP アドレス> はテストするインターフェイスと同一のサブネット上にある別のコンピュータの IP アドレスです。)
ping <IP アドレス>
IPマスカレードがうまくいかない件1
/etc/sysconf/iptableに以下の設定を追加
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -s 192.168.0.1/24 -j MASQUERADE
※eth0:Global側、192.168.0.1:ローカル側
これだけだとIPマスカできなかった。。調査によると
echo 1 >/proc/sys/net/ipv4/ip_forward
を実行し、ip_forwardを有効にするとできるらしい。できた!
あとはDNSだけ。。
IPマスカレードがうまくいかない件2
icmpのエラーがデフォルトゲートから返ってきてしまう。
iptableの設定でFORWARDが全てReject with icmp 的な感じになっていた。
これをとったらちゃんとパケット通ったが、セキュリティが危ない。。
IPマスカレードがうまくいかない件3
Gnuradio端末のパケットがゲートを通れない。(ネットが見れない。。)
FORWARDの設定がだめ?pingのアクセスもlan内からだとできない。
なぜか「IPマスカレードがうまくいかない件1」においてまた0に書きかえられたいた。。
IPマスカレード
Broadcom製のドライバ
ethtool
ネットワークインターフェースの状況が分かる便利なコマンド
こいつでethtool -i eth2とかやるとそのNICのドライバの情報が分かる。
最終更新:2011年10月13日 14:54