やり方 (Debian系)
auto enp0s3
iface enp0s3 inet manual
pre-up ip link set $IFACE up name net0
post-down ip link set $IFACE down
auto enp0s8
iface enp0s8 inet manual
pre-up ip link set $IFACE up name net1
post-down ip link set $IFACE down
manual
設定になってるのは他の箇所の都合なので、たぶん dhcp
とか static
でも行ける。
気がする。
知らんけど。
あと、Redhad系は知らん。
すまん。
でも似たようなことできる気がするから、参考にはなるんじゃないかな?
知らんけど。
とにかくこれで、以降は enp0s3
の代わりに net0
、enp0s8
の代わりに net1
が使える。
ip addr
で見るとこんな感じ。
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
...
2: net0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:30:cf:5d brd ff:ff:ff:ff:ff:ff
altname enp0s3
inet 192.168.101.45/24 brd 192.168.101.255 scope global dynamic net0:0
valid_lft 573sec preferred_lft 573sec
inet 192.168.101.9/24 scope global secondary net0
valid_lft forever preferred_lft forever
inet6 fd17:625c:f037:a865:a00:27ff:fe30:cf5d/64 scope global dynamic mngtmpaddr
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe30:cf5d/64 scope link
valid_lft forever preferred_lft forever
3: net1: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br-vlan state UP group default qlen 1000
link/ether 08:00:27:91:6c:0e brd ff:ff:ff:ff:ff:ff
altname enp0s8
inet6 fd17:625c:f037:a865:a00:27ff:fe91:6c0e/64 scope global dynamic mngtmpaddr
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe91:6c0e/64 scope link
valid_lft forever preferred_lft forever
4: net0.10@net0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-mgmt state UP group default qlen 1000
...
元の名前が altname
となっていて、もちろんそちらも同様に使える。
上記設定の後で
auto net0:0
iface net0:0 inet dhcp
iface net0:0 inet6 auto
こんなんやってDHCP有効にしたり、net0/net1 でVLAN (net0.10@net0
) やらブリッジ (br-mgmt
) の設定したり、keepalivedで使ったり (192.168.101.9/24
) と、まあ普通にデバイスとして使える。
余談
あちこちの設定ファイルにネットワークデバイス名書かなきゃいけないけど、「予測可能な名前」って環境によって変わるから、仮想マシンで練習した設定を実マシンに持っていくとき全部書き換えとかやってらんねーってことで、「一つ目」「二つ目」でわかる別名をつけたかった。
だけど、ネットで探しても udev のruleいじるとか根本的なのばかり出てきて、ちょっと別名付けたいだけにしてはえらくハードなのばかりしか出てこない。
いろいろ見てるうちに「これもう ip link でなんかできないの?」って気がしてきたので man 見たらビンゴだった。
本当は慣れ親しんだ eth0
、eth1
にしたかったんだけど、この記事の警告見て諦めた。
net0/net1 という名前もぶっちゃけ eth* を引きずってるだけで別に制約じゃないので、用途とか繋がってるネットワークがわかるような名前にするとよさそう。