おふとんの中から寝言をつぶやく

ビットコインなどの暗号(仮想)通貨関連の話題を中心に雑多に書きます。

kvmから起動したVMの、ipコマンドを使った設定

以前書いた記事、

ubuntu18.04でkvmを使って仮想マシンを起動する - おふとんの中から寝言をつぶやく

こちらで使っていたrc.localはifconfigを使っていたので、ubuntu22をクリーンインストールしたときに、net-toolsを入れないといけなくなっているので、デフォルトで使えるipコマンドで設定できるように書き換えました。

/etc/rc.local

#!/bin/bash
IP24=192.168.1
GW=.1
NIC=`ip link |awk '$2 ~ /^ens/ {print $2}'`
HEX=`ip a |awk '$1 ~ /^link\/ether/ {print $2}'`
HW=`echo $HEX | awk 'BEGIN{FS=":"}{print $6}'`
DEV=`echo $NIC | awk 'BEGIN{FS=":"}{print $1}'`
DEC=`echo "obase=10; ibase=16; ${HW^^}"|bc`
IP=$IP24.$DEC
echo $DEV
echo "ip address: " $IP
echo "mac address: " $HEX
echo "broadcast : " $IP24.255
echo "gateway   : " $IP24$GW
ip addr flush dev $NIC
ip a add $IP/255.255.255.0 dev $NIC
ip route add default via $IP24$GW
echo $((0x$HW))
hostname leaf$((0x$HW))
echo 127.0.0.1 localhost > /etc/hosts
echo $IP $(hostname) >> /etc/hosts

exit 0