Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- BRIDGE=br0
- IFNAME=tap0
- # Network information
- NETWORK=10.0.2.0
- NETMASK=255.255.255.0
- GATEWAY=10.0.2.1
- DHCPRANGE=10.0.2.2,10.0.2.254
- # Optionally parameters to enable PXE support
- TFTPROOT=
- BOOTP=
- do_brctl() {
- /usr/bin/sudo /sbin/brctl "$@"
- }
- do_ifconfig() {
- /usr/bin/sudo /bin/ifconfig "$@"
- }
- do_dnsmasq() {
- /usr/bin/sudo /usr/sbin/dnsmasq "$@"
- }
- check_bridge() {
- if do_brctl show | grep "^$1" > /dev/null 2> /dev/null; then
- return 1
- else
- return 0
- fi
- }
- create_bridge() {
- do_brctl addbr "$1"
- do_brctl stp "$1" off
- do_ifconfig "$1" "$GATEWAY" netmask "$NETMASK" up
- }
- start_dnsmasq() {
- do_dnsmasq \
- --strict-order \
- --except-interface=lo \
- --interface=$BRIDGE \
- --listen-address=$GATEWAY \
- --bind-interfaces \
- --dhcp-range=$DHCPRANGE \
- --dhcp-option=15,example.com \
- --conf-file="" \
- --pid-file=/var/run/qemu-dnsmasq-$BRIDGE.pid \
- --dhcp-leasefile=/var/run/qemu-dnsmasq-$BRIDGE.leases \
- --dhcp-no-override \
- ${TFTPROOT:+"--enable-tftp"} \
- ${TFTPROOT:+"--tftp-root=$TFTPROOT"} \
- ${BOOTP:+"--dhcp-boot=$BOOTP"}
- }
- setup_bridge() {
- if check_bridge "$1" ; then
- create_bridge "$1"
- start_dnsmasq "$1"
- if test "$2" ; then
- do_ifconfig "$2" 0.0.0.0 up
- do_brctl addif "$BRIDGE" "$2"
- fi
- fi
- }
- setup_bridge "$BRIDGE" "$1"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement