Minor fixes + support hostname

This commit is contained in:
Josh Kunz 2019-03-11 22:32:16 -07:00
parent b17ffa6d6f
commit e78aac3b9c
2 changed files with 8 additions and 5 deletions

View File

@ -4,6 +4,7 @@ import argparse
import ipaddress
import json
import re
import socket
import subprocess
from typing import List
@ -22,9 +23,10 @@ maxleases 1
interface {dhcp_intf}
option dns {dns}
option router {gateway}
option subnet {subnet}
option dns {dns}
option router {gateway}
option subnet {subnet}
option hostname {hostname}
"""
def nameservers() -> List[str]:
@ -70,8 +72,9 @@ def generate_conf(intf_name : str) -> str:
return DHCP_CONF_TEMPLATE.format(
dhcp_intf = intf_name,
dns = ' '.join(nameservers()),
host_addr = host_addr.ip,
gateway = droute['gateway'],
host_addr = host_addr.ip,
hostname = socket.gethostname(),
subnet = host_addr.network.netmask,
)

2
run.sh
View File

@ -50,7 +50,7 @@ udhcpd -I $DUMMY_DHCPD_IP -f $DHCPD_CONF_FILE &
# -serial mon:stdio: use "monitored stdio" as our serial output.
# -nic: Use a TAP interface with our custom up/down scripts.
# -drive: The VM image we're booting.
qemu-system-x86_64 -enable-kvm -nographic -serial mon:stdio \
exec qemu-system-x86_64 -enable-kvm -nographic -serial mon:stdio \
-nic tap,id=qemu0,script=$QEMU_IFUP,downscript=$QEMU_IFDOWN \
"$@" \
-drive format=raw,file=/image