38 lines
1.1 KiB
Bash
Executable File
38 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
. driglibash-base
|
|
|
|
if [ "$#" -ne 2 ] ; then
|
|
yell "Missing 2 parameters"
|
|
die "Usage: $0 <local_iface> <net_iface>"
|
|
fi
|
|
|
|
root_or_die
|
|
|
|
local_iface="$1"
|
|
net_iface="$2"
|
|
net="192.168.99"
|
|
|
|
run sysctl net.ipv4.ip_forward=1
|
|
#clean "sysctl net.ipv4.ip_forward=1"
|
|
|
|
run nmcli device set "$local_iface" managed no
|
|
clean "nmcli device set "$local_iface" managed yes"
|
|
|
|
run ip a add $net.254/24 dev "$local_iface"
|
|
clean "ip a del $net.254/24 dev $local_iface"
|
|
|
|
# For dhcp offers
|
|
run iptables -A OUTPUT -d 255.255.255.255/32 -j ACCEPT
|
|
|
|
run iptables -A OUTPUT -d $net.0/24 -j ACCEPT
|
|
run iptables -A INPUT -s $net.0/24 -j ACCEPT
|
|
run iptables -A INPUT -s 255.255.255.255 -j ACCEPT
|
|
run iptables -A INPUT -i "$local_iface" -j ACCEPT
|
|
|
|
run iptables -t nat -A POSTROUTING -o "$net_iface" -j MASQUERADE
|
|
run iptables -A FORWARD -i $net_iface -o $local_iface -m state --state RELATED,ESTABLISHED -j ACCEPT
|
|
run iptables -A FORWARD -i $local_iface -o $net_iface -j ACCEPT
|
|
run dnsmasq --dhcp-range=$net.100,$net.199,10m -d --server=9.9.9.9 --listen-address $net.254 --interface "$local_iface" -p0
|
|
|
|
clean
|