Prev / Next / ChangeLog::hjk

NIC の名前(eth0, eth1, wlan0, ath0,...)を変更[system][network][X61]

2011-01-20

udev (/etc/udev/rules.d/70-persistent-net.rules) で制御しているんだね。


システムから俯瞰するとこんな感じ…か?



NIC(イーサネット)が eth の何番に振られるか (eth0, eth3) を制御しているのは、

/etc/udev/rules.d/70-persistent-net.rules

だ。

このファイルを変更したら

/etc/network/interfaces

も変更することも忘れないようにしなければ。

作業手順としては

# cp /etc/udev/rules.d/70-persistent-net.rules /etc/udev/rules.d/70-persistent-net.rules.bk
# vi /etc/udev/rules.d/70-persistent-net.rules

# vi /etc/network/interfaces
# shutdown -r now





問題の
/etc/udev/rules.d/70-persistent-net.rules の中身は、例えばこんな感じになっている (X61)

# This file was automatically generated by the /lib/udev/write_net_rules
# program, probably run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single line.
# MAC addresses must be written in lowercase.

# PCI device 0x10ec:0x8139 (8139too)
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:80:00:00:00:00", NAME="eth0"

# PCI device 0x1180:0x0475 (orinoco_cs)
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:11:2d:11:11:11", NAME="eth1"

# PCI device 0x1180:0x0475 (orinoco_cs)
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:22:22:06:22:22", NAME="eth2"

# PCI device 0x168c:0x0013 (ath_pci)
#SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:33:33:33:93:33", ATTRS{type}=="1", NAME="ath0"

# PCI device 0x8086:0x1049 (e1000e)
#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:1d:72:yy:96:zz", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"

# PCI device 0x8086:0x4230 (iwl4965)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1f:3b:xx:yy:zz", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"


編集は この NAME="eth..." 部分を書き換えればよい。
そして、書き換えた eht... 番号に合わせて /etc/network/interfaces を書き換えて、
再起動。




ところで、この 70-persistent-net.rules の当該部分は最低限

#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="AA:BB:CC:DD:EE:FF", NAME="eth3"


だけでもよい。




70-persistent-net.rules に書かれている

ATTR{address}"00:1f:3b:51:75:9b"
ATTR{dev_id}
"0x0"
ATTR{type}=="1"

などの情報は

/sys/class/net/"NICに振られている番号(eth0,wlan0)/

以下にある

ls $ ls /sys/class/net/eth3/


addr_len  broadcast  dev_id  dormant   flags    iflink     mtu        power       subsystem     type
address   carrier    device  features  ifindex  link_mode  operstate  statistics  tx_queue_len  uevent



編集後、再起動すると、この /sys/class/net/ 以下は
例えば

eth3 -> eth0

のようにかわる。



参照URL: http://hiro-system.blog.ocn.ne.jp/blog/2010/04/debianniceth0_6.html
参照URL: http://norian.blog50.fc2.com/blog-entry-26.html
参照URL: http://tach.arege.net/trac/wiki/Debian/NetworkInterfaceName
参照URL: http://norian.blog50.fc2.com/?mode=m&no=66
参照URL: http://www.linuxfromscratch.org/blfs/view/development/chapter07/network.html
参照URL: http://www.math.kobe-u.ac.jp/~kodama/tips-net-setup.html

permlink