1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
#!/bin/bash -x
PID_FILE="/tmp/test_dnsmasq.pid"
LEASE_FILE="/tmp/test_dnsmasq.lease"
IPV4_BLOCK="192.0.2"
IPV6_BLOCK="2001:db8:a::"
DHCP_SRV_IP="${IPV4_BLOCK}.1"
DHCP_SRV_IP6="${IPV6_BLOCK}1"
if [ -e $PID_FILE ];then
sudo kill `cat $PID_FILE`
fi
if [ "CHK$1" == "CHKrm" ]; then
sudo ip link del dhcpcli
sudo ip netns del mozim
exit
fi
sudo ip netns add mozim
sudo ip link add dhcpcli type veth peer name dhcpsrv
sudo ip link set dhcpcli up
sudo ip link set dhcpsrv netns mozim
sudo ip netns exec mozim ip link set dhcpsrv up
sudo ip netns exec mozim ip addr add ${DHCP_SRV_IP}/24 dev dhcpsrv
sudo ip netns exec mozim ip -6 addr add ${DHCP_SRV_IP6}/64 dev dhcpsrv
sudo rm $LEASE_FILE -f
sudo ip netns exec mozim dnsmasq \
--log-dhcp \
--keep-in-foreground \
--no-daemon \
--conf-file=/dev/null \
--dhcp-leasefile=$LEASE_FILE \
--no-hosts \
--dhcp-host=dummy-host,${IPV4_BLOCK}.99 \
--dhcp-option=option:dns-server,8.8.8.8,1.1.1.1 \
--dhcp-option=option:mtu,1492 \
--dhcp-option=option:domain-name,example.com\
--dhcp-option=option:ntp-server,${DHCP_SRV_IP} \
--dhcp-option=121,203.0.113.0/24,${IPV4_BLOCK}.40 \
--dhcp-option=249,203.0.113.0/24,${IPV4_BLOCK}.40 \
--keep-in-foreground \
--clear-on-reload \
--interface=dhcpsrv \
--enable-ra \
--dhcp-range=${IPV6_BLOCK}2,${IPV6_BLOCK}fff,ra-names,slaac,64,2m \
--dhcp-range=${IPV4_BLOCK}.2,${IPV4_BLOCK}.50,2m \
--no-ping
if [ "CHK$1" == "CHK" ];then
sudo ip link del dhcpcli
sudo ip netns del mozim
fi
|