GIGABYTE の GA-P55A-UD3R のマザーボードを使っているマシンがあります。このマシンでは「GIGABYTE – マザーボード – Socket 1156 – GA-P55A-UD3R (rev. 2.0)」でスペックを見るとわかるように、LAN機能は RTL8111E で実装してあります。このマシンへCentOS6.2をインストールしたところ、WOL(Wake On LAN)ができなくなりました。
Fedora16だと大丈夫だったと記憶しているのですが、その前のFedora14あたりだと駄目だった記憶があったのですが、CentOS6.2で問題が起きるとは思っておらず、見逃していました。このマシンへ最初にOSをインストールしたときに発生した問題について、r8168 | hiro345 に対策した記録が残っています。ということで、Realtek のNICについては、OS側が誤認識をする場合があります。気をつけましょう。
調べてみると、「Wake-on-LAN – MythTV Official Wiki 」に記載がありました。「Wake On LAN, Fedora 11 and Realtek RTL8111/8168 (etc)」のところを読むと、下記のチップを使っている場合に問題が起こるそうです。
RTL8111B/RTL8168B/RTL8111/RTL8168 RTL8111C/RTL8111CP/RTL8111D(L) RTL8168C/RTL8111DP/RTL8111E RTL8105E
解決策は、Realtekのサイトからドライバをダウンロードしてインストールするということです。http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=13&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false)
ということで、
$ cd ~/download/r8168-8.026.00 $ sudo make clean modules $ sudo ./autorun.sh $ sudo depmod -a $ sudo /sbin/service network restart $ lsmod |grep r816 $ ifconfig -a $ sudo ethtool eth0
なお、 /etc/modprobe.d/blacklist.conf へ下記を追加しておくと良いとのこと
blacklist r8169
ドライバを変更したところ、ifcfg-eth0に記載した「ETHTOOL_OPTS="wol g"」が機能するようになりました。