Dynamisches interface handling

Started by skydiablo, June 17, 2020, 04:44:33 PM

Previous topic - Next topic
June 17, 2020, 04:44:33 PM Last Edit: June 18, 2020, 09:16:36 AM by skydiablo
moin,
ich betreibe ein opnsense in einer VM. hier kommt es ab und zu mal vor, dass ich neue interfaces hinzufügen möchte. zwar wird nach dem reboot der VM das neue interface erkannt, leider bringt es die vom network-treiber herausgegebenen device-names (vtnet1,vtnet2,vtnet3,...) durcheinander, bzw in eine neue reihenfolge. das zerschießt natürlich sämtliche configs und macht das opnsense unbrauchbar.
auf basis dieser aussage habe ich entsprechende scripte angelegt und wollte nun mittels devd die interfaces anhand der MAC immer umbenennen. leider passiert nach einem reboot einfach nichts, also mein fix wird nicht ausgeführt. was mache ich falsch?

/etc/fix-if-name.sh

#!/bin/sh
dev=$1
mac=$(ifconfig $dev | grep ether | awk '{print $2;}')
name=$(grep ^$mac /etc/ifmap | awk '{print $2;}')
if [ -n $name ]; then
    logger Rename interface $dev to $name
    ifconfig $dev name $name
fi


/etc/ifmap

fa:16:3e:04:XX:XX MGMT
fa:16:3e:f2:XX:XX EXT50
fa:16:3e:6f:XX:XX DEPLOY


/etc/devd/fix-if-name.conf

# notify 0 {
attach 0 {
        match "system"          "IFNET";
        match "type"            "ATTACH";
        media-type              "ethernet";
        action "/etc/fix-if-name.sh $device-name";
};


greez & thx,
volker

EDIT: crossposting