Tunnel HNA mit OpenWrt White Russian: Unterschied zwischen den Versionen
Kwm (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Kwm (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(60 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
''' | '''Vorab:''' Grundsätzlich ist diese Freifunkfirmware und die passende Hartware auch heute noch zum Betrieb freier Netze geeignet, es ist aber die Technik aus der | ||
Anfangszeit von Freifunk. | |||
'''Diese Beschreibung geht davon aus, das auf Deinem Linksys WRT54GL Router [http://{{SERVERNAME}}/firmware/v1.6/images/stable/hna/ OpenWrt White Russian] in der verlinkten Version installiert ist. | |||
Sowie die VPN-Tunnel zu den VPN-Servern bestehen.''' | |||
* VPN-1-Server | [http://vpn1.freifunk-halle.org vpn1.freifunk-halle.org] | |||
* VPN-2-Server | [http://vpn2.freifunk-halle.org vpn2.freifunk-halle.org] | |||
Anmerkung hinter vpn2.freifunk-halle.org sind mehrere Server vpn2a, vpn2b, vpn2c. | |||
Nach den Änderungen musst Du Deinen Router neu starten. | |||
Zum Testen auf dem Router einloggen (z.B. PuTTY) und dann '''traceroute google.com''' eingeben. | |||
Du kannst die Schritte mit den Programm Putty, WinSCP und einem Webbrowser (z.B. Firefox) abarbeiten. | |||
'''1. OPENVPN''' | |||
Die Dateien für OPENVPN bekommst Du von [https://{{SERVERNAME}}/forum/memberlist.php?mode=viewprofile&u=361 3dfx] oder [https://{{SERVERNAME}}/forum/memberlist.php?mode=viewprofile&u=770 kwm]. | |||
Auf Deinem Freifunkrouter musst Du das Verzeichnis openvpn als Unterverzeichnis von /etc/ anlegen. | |||
In das Verzeichnis /etc/'''openvpn''' speicherst Du die Dateien für OPENVPN. | |||
''' | Jetzt muss OPENVPN noch in die Liste der zu startenden Dienste aufgenommen werden. Die Dienste welche automatisch gestartet werden, stehen im Verzeichnis /etc/'''init.d'''/ und beginnen mit einem '''S''' gefolgt von einer Zahl. Die Zahl bestimmt die Startreihenfolge. | ||
Um OPENVPN auf Autostart zu stelle melde Dich als '''root''' mit einem Terminalprogramm (z.B. Putty) auf Deinem Freifunkrouter an und gib folgenden Befehl ein | |||
ln -s /etc/init.d/openvpn /etc/init.d/S99openvpn | |||
und bestätige mit '''Enter'''. Jetzt startet OPENVPN automatisch beim Starten des Routers. | |||
'''2. ändern der DNS-Abfrage''' /etc/init.d/'''S60dnsmasq''' ''(S = starten | Zahl = Startreihenfolge)'' | |||
<pre> | |||
#!/bin/sh | |||
. /etc/functions.sh | |||
write_config() | |||
{ | |||
WAN_DOMAIN_LOCAL= | |||
WAN_DOMAIN_DOMAIN= | |||
test -n "$WAN_DOMAIN" && WAN_DOMAIN_LOCAL="local=/.$WAN_DOMAIN/" | |||
test -n "$WAN_DOMAIN" && WAN_DOMAIN_DOMAIN="domain=$WAN_DOMAIN" | |||
cat>/var/etc/dnsmasq.conf<<EOF | |||
# filter what we send upstream | |||
#domain-needed | |||
bogus-priv | |||
filterwin2k | |||
# To speed up ssh, all lookups throug dnsmasq | |||
no-resolv | |||
# allow /etc/hosts and dhcp lookups via *.lan | |||
addn-hosts=/etc/local.hosts | |||
$WAN_DOMAIN_LOCAL | |||
$WAN_DOMAIN_DOMAIN | |||
expand-hosts | |||
############################################## | |||
# new ff root server ips (intranet) | |||
############################################## | |||
server=10.62.28.36 | |||
server=10.62.28.35 | |||
server=10.62.2.131 | |||
server=10.62.16.1 | |||
server=10.62.16.37 | |||
############################################## | |||
# new ff root server ips (internet) | |||
############################################## | |||
server=134.255.239.79 | |||
server=178.254.31.83 | |||
############################################## | |||
# reverse dns | |||
############################################## | |||
server=8.8.8.8 | |||
server=8.8.4.4 | |||
############################################## | |||
EOF | |||
IFS=\; | |||
for i in $WAN_DNS;do | |||
echo "server=$i">>/var/etc/dnsmasq.conf | |||
done | |||
unset IFS | |||
if [ -z "$WANOLSR" ]; then | |||
cat>>/var/etc/dnsmasq.conf<<EOF | |||
# no dns queries from the wan | |||
except-interface=$(nvram get wan_ifname) | |||
EOF | |||
fi | |||
DHCPEND=$(nvram get dhcp_num) | |||
test -z "$DHCPEND" && DHCPEND=4 | |||
if [ $DHCPEND -gt 0 ]; then | |||
DHCPLEASE=$(nvram get dhcp_lease) | |||
test -z "$DHCPLEASE" && DHCPLEASE=12h | |||
test "$DHCPLEASE" = "0" && DHCPLEASE=12h | |||
DHCPNET=$(echo $LANNET|cut -d'.' -f1-3) | |||
DHCPBEG=$(nvram get dhcp_start) | |||
DHCPBEG=${DHCPBEG##*.} | |||
test -z "$DHCPBEG" && DHCPBEG=100 | |||
DHCPEND=$(( $DHCPBEG + $DHCPEND - 1 )) | |||
echo "dhcp-range=wired,$DHCPNET.$DHCPBEG,$DHCPNET.$DHCPEND,$LANMSK,$DHCPLEASE">>/var/etc/dnsmasq.conf | |||
else | |||
echo "no-dhcp-interface=$(nvram get lan_ifname)">>/var/etc/dnsmasq.conf | |||
fi | |||
WLDHCP=$(nvram get ff_wldhcp) | |||
IFS=\; | |||
for ENT in $WLDHCP; do | |||
NET=${ENT%[:,]*} | |||
MSK=${ENT#*[:,]} | |||
if [ -n "$NET" ] && [ -n "$MSK" ]; then | |||
DHCPLEASE=30m | |||
DHCPBEG=$(ipcalc -n $NET|cut -d'.' -f4) | |||
#DHCPBEG=$(( $DHCPBEG + 2 )) | |||
DHCPEND=$(ipcalc -b $NET|cut -d'.' -f4) | |||
#DHCPEND=$(( $DHCPEND - 1 )) | |||
DHCPNET=$(ipcalc -n $NET|cut -d'=' -f2|cut -d'.' -f1-3) | |||
echo "dhcp-range=wlnat,$DHCPNET.$DHCPBEG,$DHCPNET.$DHCPEND,$MSK,$DHCPLEASE">>/var/etc/dnsmasq.conf | |||
fi | |||
done | |||
WAN_HOSTNAME=$(nvram get wan_hostname) | |||
if test -n "$WAN_HOSTNAME" && test -n "$LANADR"; then | |||
echo "address=/$WAN_HOSTNAME/$LANADR">>/var/etc/dnsmasq.conf | |||
echo "address=/$WAN_HOSTNAME.$WAN_DOMAIN/$LANADR">>/var/etc/dnsmasq.conf | |||
fi | |||
cat>>/var/etc/dnsmasq.conf<<EOF | |||
dhcp-leasefile=/var/run/dhcp.leases | |||
# allow a /etc/ethers for static hosts | |||
read-ethers | |||
# other useful options: | |||
# subnet mask: dhcp-option=wired,1,255.255.255.0 | |||
# default route(s): dhcp-option=wired,3,192.168.1.1,192.168.1.2 | |||
# dns server(s): dhcp-option=wired,6,192.168.1.1,192.168.1.2 | |||
# broadcast addr: dhcp-option=wired,28,192.168.1.255 | |||
# broadcast addr: dhcp-option=wlnat,28,172.31.255.255 | |||
EOF | |||
test -f /etc/local.dnsmasq.conf && cat>>/var/etc/dnsmasq.conf</etc/local.dnsmasq.conf | |||
} | |||
case $1 in | |||
start) | |||
# Compatibility with openwrt | |||
ln -sf /var/etc/resolv.conf /tmp/resolv.conf | |||
rm -f /var/etc/resolv.conf | |||
WAN_DNS=$(nvram get wan_dns) | |||
WAN_DOMAIN=$(nvram get wan_domain) | |||
# No DNS: Use well known DNS servers | |||
test -z "$WAN_DNS" && WAN_DNS="88.198.178.18;141.54.1.1;212.204.49.83;208.67.220.220;208.67.222.222" | |||
if [ "0" != "$(nvram get ff_dnsmasq)" ];then | |||
echo "Starting dnsmasq..." | |||
export NVRAM_wan_ifname | |||
export NVRAM_lan_ifname | |||
export NVRAM_lan_ifnames | |||
eval $(/usr/bin/netparam) | |||
write_config | |||
echo "search olsr">/var/etc/resolv.conf | |||
echo "nameserver 127.0.0.1">>/var/etc/resolv.conf | |||
/usr/sbin/dnsmasq | |||
else | |||
echo "Configure resolv..." | |||
:>/var/etc/resolv.conf | |||
IFS=\; | |||
for i in $WAN_DNS;do | |||
echo "nameserver $i">>/var/etc/resolv.conf | |||
done | |||
unset IFS | |||
fi | |||
test -n "$WAN_DOMAIN" && echo "search $WAN_DOMAIN">>/var/etc/resolv.conf | |||
;; | |||
stop) | |||
echo "Stopping dnsmasq..." | |||
killall dnsmasq | |||
;; | |||
restart) | |||
$0 stop | |||
$0 start | |||
;; | |||
*) | |||
echo "Usage: $0 start|stop|restart" | |||
;; | |||
esac | |||
</pre> | |||
'''3. ändern der Zeit-Abfrage''' /etc/init.d/'''S92rdate''' ''(S = starten | Zahl = Startreihenfolge)'' | |||
<pre> | |||
#!/bin/sh | |||
# Zeit und Datum Abgleich mit Zeitservern | |||
ntp_pool="192.53.103.108 192.53.103.104 128.138.140.44 171.64.7.77 171.64.7.99 81.169.154.44" | |||
test -n "$FAILSAFE" && exit | |||
if [ ! -f ${0%/*}/*ntp* ]; then | |||
i=0 | |||
while [ "$i" -le 6 ]; do | |||
# if [ -n "$(for t in main olsr 68; do ip route list exact 0/0 table $t; done)" ]; then | |||
sh -c " | |||
pool='$ntp_pool' | |||
i=0 | |||
while [ \$i -lt 4 ]; do | |||
let i=\$i+1 | |||
for n in \$pool; do | |||
rdate -s \$n 2>/dev/null 1>/dev/null && exit | |||
sleep 5 | |||
done | |||
done | |||
"& | |||
return | |||
# else | |||
# let i=$i+1 | |||
# sleep 30 | |||
# fi | |||
done | |||
fi | |||
</pre> | |||
'''4. Hinweis''' | |||
Wir gehen in der Beschreibung davon aus, das Du einen '''DSL-Router''', einen '''Freifunk-Router''' und einen '''Internetzugang''' hast. | |||
Die beiden Router haben jeweils einen WAN-Port (Weg Richtung Internet) und oft vier LAN-Ports (internes NETZ). | |||
Der WAN-Port des Freifunk-Routers ist mit einem Netzwerkkabel mit einem Lan-Port des DSL-Routers zu verbinden. | |||
Aus Sicht des DSL-Routers gehört der WAN-Port des Freifunk-Router zum lokalen Netz des DSL-Routers. | |||
Aus Sicht des Freifunk-Routers gehört der LAN-Port des DSL-Router zum Internet. | |||
Der DSL-Router ist für den Freifunk-Router das Gateway zum Internet. | |||
Der Freifunk-Router muss am Wan-Port eine IP-Adresse aus dem LAN (lokalen Netz) des DSL-Router zugeteilt bekommen. | |||
Die IP-Adresse des DSL-Routers im LAN (lokales Netz) ist die Gateway IP für den Freifunk-Router. | |||
'''5. WAN-Default-Route''' entfernen in den Einstellungen WAN | |||
Öffne mit einem Webbrowser die Startseite Deines Freifunkrouters. Gehe auf Verwalten und melde Dich als '''root''' an. Dann gehe auf '''WAN'''. | |||
<pre> | |||
Verwaltung: WAN | |||
WAN-Protokoll: WAN IP eintragen | |||
WAN-Netzmaske: Netzmaske eintragen | |||
WAN-Default-Route: hier nichts eintragen! | |||
</pre> | |||
Wenn in den WAN-Einstellungen die WAN-Default-Route nicht entfernt ist, geht der Internetverkehr wie bisher direkt ins Internet. Mit Eintrag WAN-Default-Route ist also alles wie bisher. Ohne diesen Eintrag und mit den hier beschriebenen Änderungen geht der Internetverkehr über den VPN-Server ins Internet. | |||
'''6. Statische Routen setzen''' im Bereich LAN | |||
Öffne mit einem Webbrowser die Startseite Deines Freifunkrouters. Gehe auf Verwalten und melde Dich als '''root''' an. Dann gehe auf '''LAN'''. | |||
<pre> 134.255.239.79:255.255.255.255:X.X.X.X:0:vlan1 | |||
178.254.31.83:255.255.255.255:X.X.X.X:0:vlan1 | |||
62.141.46.39:255.255.255.255:X.X.X.X:0:vlan1 | |||
188.68.48.88:255.255.255.255:X.X.X.X:0:vlan1 | |||
192.53.103.108:255.255.255.255:X.X.X.X:0:vlan1 | |||
192.53.103.104:255.255.255.255:X.X.X.X:0:vlan1 | |||
128.138.140.44:255.255.255.255:X.X.X.X:0:vlan1 | |||
8.8.8.8:255.255.255.255:X.X.X.X:0:vlan1 | |||
8.8.4.4:255.255.255.255:X.X.X.X:0:vlan1 | |||
</pre> | |||
'''x.x.x.x''' ist durch die IP zu ersetzen, welche Dein DSL-Router an den LAN-Ports hat. | |||
vlan1 ist der WAN-Port des Freifunk-Routers. | |||
Die Routen zeigen auf vpn1, vpn2a, vpn2b, vpn2c, Zeit-Server, DNS-Server. | |||
'''7. ändern der Firewall''' /etc/'''local.fw''' und noch dises '''10.62.X.X''' auf Deine Node-IP-Adresse ändern. | |||
<pre> | |||
#!/bin/sh | |||
# Place your firewall addons here or use /etc/local.fw-xxx | |||
#MACS="00:00:01:00:00:01 0c:68:0b:02:a3:1e" | |||
case $1 in | |||
start) | |||
for i in $MACS; do | |||
# You can also add "-I INPUT", but it is sufficient | |||
# to block forwarding, since the delinquent will get | |||
# the routing but no (internet) connectivity. | |||
iptables -I FORWARD -m mac --mac-source $i -j DROP | |||
done | |||
iptables -I INPUT -i tap+ -j ACCEPT | |||
iptables -I OUTPUT -o tap+ -j ACCEPT | |||
iptables -I FORWARD -i tap+ -j ACCEPT | |||
iptables -I FORWARD -o tap+ -j ACCEPT | |||
iptables -I POSTROUTING -t nat -o tap+ -s 192.168.1.0/24 -j SNAT --to-source 10.62.X.X | |||
;; | |||
stop) | |||
for i in $MACS; do | |||
iptables -D FORWARD -m mac --mac-source $i -j DROP | |||
done | |||
;; | |||
esac | |||
</pre> |
Aktuelle Version vom 4. August 2016, 10:52 Uhr
Vorab: Grundsätzlich ist diese Freifunkfirmware und die passende Hartware auch heute noch zum Betrieb freier Netze geeignet, es ist aber die Technik aus der Anfangszeit von Freifunk.
Diese Beschreibung geht davon aus, das auf Deinem Linksys WRT54GL Router OpenWrt White Russian in der verlinkten Version installiert ist.
Sowie die VPN-Tunnel zu den VPN-Servern bestehen.
- VPN-1-Server | vpn1.freifunk-halle.org
- VPN-2-Server | vpn2.freifunk-halle.org
Anmerkung hinter vpn2.freifunk-halle.org sind mehrere Server vpn2a, vpn2b, vpn2c.
Nach den Änderungen musst Du Deinen Router neu starten.
Zum Testen auf dem Router einloggen (z.B. PuTTY) und dann traceroute google.com eingeben.
Du kannst die Schritte mit den Programm Putty, WinSCP und einem Webbrowser (z.B. Firefox) abarbeiten.
1. OPENVPN
Die Dateien für OPENVPN bekommst Du von 3dfx oder kwm. Auf Deinem Freifunkrouter musst Du das Verzeichnis openvpn als Unterverzeichnis von /etc/ anlegen. In das Verzeichnis /etc/openvpn speicherst Du die Dateien für OPENVPN.
Jetzt muss OPENVPN noch in die Liste der zu startenden Dienste aufgenommen werden. Die Dienste welche automatisch gestartet werden, stehen im Verzeichnis /etc/init.d/ und beginnen mit einem S gefolgt von einer Zahl. Die Zahl bestimmt die Startreihenfolge.
Um OPENVPN auf Autostart zu stelle melde Dich als root mit einem Terminalprogramm (z.B. Putty) auf Deinem Freifunkrouter an und gib folgenden Befehl ein
ln -s /etc/init.d/openvpn /etc/init.d/S99openvpn
und bestätige mit Enter. Jetzt startet OPENVPN automatisch beim Starten des Routers.
2. ändern der DNS-Abfrage /etc/init.d/S60dnsmasq (S = starten | Zahl = Startreihenfolge)
#!/bin/sh . /etc/functions.sh write_config() { WAN_DOMAIN_LOCAL= WAN_DOMAIN_DOMAIN= test -n "$WAN_DOMAIN" && WAN_DOMAIN_LOCAL="local=/.$WAN_DOMAIN/" test -n "$WAN_DOMAIN" && WAN_DOMAIN_DOMAIN="domain=$WAN_DOMAIN" cat>/var/etc/dnsmasq.conf<<EOF # filter what we send upstream #domain-needed bogus-priv filterwin2k # To speed up ssh, all lookups throug dnsmasq no-resolv # allow /etc/hosts and dhcp lookups via *.lan addn-hosts=/etc/local.hosts $WAN_DOMAIN_LOCAL $WAN_DOMAIN_DOMAIN expand-hosts ############################################## # new ff root server ips (intranet) ############################################## server=10.62.28.36 server=10.62.28.35 server=10.62.2.131 server=10.62.16.1 server=10.62.16.37 ############################################## # new ff root server ips (internet) ############################################## server=134.255.239.79 server=178.254.31.83 ############################################## # reverse dns ############################################## server=8.8.8.8 server=8.8.4.4 ############################################## EOF IFS=\; for i in $WAN_DNS;do echo "server=$i">>/var/etc/dnsmasq.conf done unset IFS if [ -z "$WANOLSR" ]; then cat>>/var/etc/dnsmasq.conf<<EOF # no dns queries from the wan except-interface=$(nvram get wan_ifname) EOF fi DHCPEND=$(nvram get dhcp_num) test -z "$DHCPEND" && DHCPEND=4 if [ $DHCPEND -gt 0 ]; then DHCPLEASE=$(nvram get dhcp_lease) test -z "$DHCPLEASE" && DHCPLEASE=12h test "$DHCPLEASE" = "0" && DHCPLEASE=12h DHCPNET=$(echo $LANNET|cut -d'.' -f1-3) DHCPBEG=$(nvram get dhcp_start) DHCPBEG=${DHCPBEG##*.} test -z "$DHCPBEG" && DHCPBEG=100 DHCPEND=$(( $DHCPBEG + $DHCPEND - 1 )) echo "dhcp-range=wired,$DHCPNET.$DHCPBEG,$DHCPNET.$DHCPEND,$LANMSK,$DHCPLEASE">>/var/etc/dnsmasq.conf else echo "no-dhcp-interface=$(nvram get lan_ifname)">>/var/etc/dnsmasq.conf fi WLDHCP=$(nvram get ff_wldhcp) IFS=\; for ENT in $WLDHCP; do NET=${ENT%[:,]*} MSK=${ENT#*[:,]} if [ -n "$NET" ] && [ -n "$MSK" ]; then DHCPLEASE=30m DHCPBEG=$(ipcalc -n $NET|cut -d'.' -f4) #DHCPBEG=$(( $DHCPBEG + 2 )) DHCPEND=$(ipcalc -b $NET|cut -d'.' -f4) #DHCPEND=$(( $DHCPEND - 1 )) DHCPNET=$(ipcalc -n $NET|cut -d'=' -f2|cut -d'.' -f1-3) echo "dhcp-range=wlnat,$DHCPNET.$DHCPBEG,$DHCPNET.$DHCPEND,$MSK,$DHCPLEASE">>/var/etc/dnsmasq.conf fi done WAN_HOSTNAME=$(nvram get wan_hostname) if test -n "$WAN_HOSTNAME" && test -n "$LANADR"; then echo "address=/$WAN_HOSTNAME/$LANADR">>/var/etc/dnsmasq.conf echo "address=/$WAN_HOSTNAME.$WAN_DOMAIN/$LANADR">>/var/etc/dnsmasq.conf fi cat>>/var/etc/dnsmasq.conf<<EOF dhcp-leasefile=/var/run/dhcp.leases # allow a /etc/ethers for static hosts read-ethers # other useful options: # subnet mask: dhcp-option=wired,1,255.255.255.0 # default route(s): dhcp-option=wired,3,192.168.1.1,192.168.1.2 # dns server(s): dhcp-option=wired,6,192.168.1.1,192.168.1.2 # broadcast addr: dhcp-option=wired,28,192.168.1.255 # broadcast addr: dhcp-option=wlnat,28,172.31.255.255 EOF test -f /etc/local.dnsmasq.conf && cat>>/var/etc/dnsmasq.conf</etc/local.dnsmasq.conf } case $1 in start) # Compatibility with openwrt ln -sf /var/etc/resolv.conf /tmp/resolv.conf rm -f /var/etc/resolv.conf WAN_DNS=$(nvram get wan_dns) WAN_DOMAIN=$(nvram get wan_domain) # No DNS: Use well known DNS servers test -z "$WAN_DNS" && WAN_DNS="88.198.178.18;141.54.1.1;212.204.49.83;208.67.220.220;208.67.222.222" if [ "0" != "$(nvram get ff_dnsmasq)" ];then echo "Starting dnsmasq..." export NVRAM_wan_ifname export NVRAM_lan_ifname export NVRAM_lan_ifnames eval $(/usr/bin/netparam) write_config echo "search olsr">/var/etc/resolv.conf echo "nameserver 127.0.0.1">>/var/etc/resolv.conf /usr/sbin/dnsmasq else echo "Configure resolv..." :>/var/etc/resolv.conf IFS=\; for i in $WAN_DNS;do echo "nameserver $i">>/var/etc/resolv.conf done unset IFS fi test -n "$WAN_DOMAIN" && echo "search $WAN_DOMAIN">>/var/etc/resolv.conf ;; stop) echo "Stopping dnsmasq..." killall dnsmasq ;; restart) $0 stop $0 start ;; *) echo "Usage: $0 start|stop|restart" ;; esac
3. ändern der Zeit-Abfrage /etc/init.d/S92rdate (S = starten | Zahl = Startreihenfolge)
#!/bin/sh # Zeit und Datum Abgleich mit Zeitservern ntp_pool="192.53.103.108 192.53.103.104 128.138.140.44 171.64.7.77 171.64.7.99 81.169.154.44" test -n "$FAILSAFE" && exit if [ ! -f ${0%/*}/*ntp* ]; then i=0 while [ "$i" -le 6 ]; do # if [ -n "$(for t in main olsr 68; do ip route list exact 0/0 table $t; done)" ]; then sh -c " pool='$ntp_pool' i=0 while [ \$i -lt 4 ]; do let i=\$i+1 for n in \$pool; do rdate -s \$n 2>/dev/null 1>/dev/null && exit sleep 5 done done "& return # else # let i=$i+1 # sleep 30 # fi done fi
4. Hinweis
Wir gehen in der Beschreibung davon aus, das Du einen DSL-Router, einen Freifunk-Router und einen Internetzugang hast.
Die beiden Router haben jeweils einen WAN-Port (Weg Richtung Internet) und oft vier LAN-Ports (internes NETZ).
Der WAN-Port des Freifunk-Routers ist mit einem Netzwerkkabel mit einem Lan-Port des DSL-Routers zu verbinden.
Aus Sicht des DSL-Routers gehört der WAN-Port des Freifunk-Router zum lokalen Netz des DSL-Routers.
Aus Sicht des Freifunk-Routers gehört der LAN-Port des DSL-Router zum Internet.
Der DSL-Router ist für den Freifunk-Router das Gateway zum Internet.
Der Freifunk-Router muss am Wan-Port eine IP-Adresse aus dem LAN (lokalen Netz) des DSL-Router zugeteilt bekommen. Die IP-Adresse des DSL-Routers im LAN (lokales Netz) ist die Gateway IP für den Freifunk-Router.
5. WAN-Default-Route entfernen in den Einstellungen WAN
Öffne mit einem Webbrowser die Startseite Deines Freifunkrouters. Gehe auf Verwalten und melde Dich als root an. Dann gehe auf WAN.
Verwaltung: WAN WAN-Protokoll: WAN IP eintragen WAN-Netzmaske: Netzmaske eintragen WAN-Default-Route: hier nichts eintragen!
Wenn in den WAN-Einstellungen die WAN-Default-Route nicht entfernt ist, geht der Internetverkehr wie bisher direkt ins Internet. Mit Eintrag WAN-Default-Route ist also alles wie bisher. Ohne diesen Eintrag und mit den hier beschriebenen Änderungen geht der Internetverkehr über den VPN-Server ins Internet.
6. Statische Routen setzen im Bereich LAN
Öffne mit einem Webbrowser die Startseite Deines Freifunkrouters. Gehe auf Verwalten und melde Dich als root an. Dann gehe auf LAN.
134.255.239.79:255.255.255.255:X.X.X.X:0:vlan1 178.254.31.83:255.255.255.255:X.X.X.X:0:vlan1 62.141.46.39:255.255.255.255:X.X.X.X:0:vlan1 188.68.48.88:255.255.255.255:X.X.X.X:0:vlan1 192.53.103.108:255.255.255.255:X.X.X.X:0:vlan1 192.53.103.104:255.255.255.255:X.X.X.X:0:vlan1 128.138.140.44:255.255.255.255:X.X.X.X:0:vlan1 8.8.8.8:255.255.255.255:X.X.X.X:0:vlan1 8.8.4.4:255.255.255.255:X.X.X.X:0:vlan1
x.x.x.x ist durch die IP zu ersetzen, welche Dein DSL-Router an den LAN-Ports hat.
vlan1 ist der WAN-Port des Freifunk-Routers.
Die Routen zeigen auf vpn1, vpn2a, vpn2b, vpn2c, Zeit-Server, DNS-Server.
7. ändern der Firewall /etc/local.fw und noch dises 10.62.X.X auf Deine Node-IP-Adresse ändern.
#!/bin/sh # Place your firewall addons here or use /etc/local.fw-xxx #MACS="00:00:01:00:00:01 0c:68:0b:02:a3:1e" case $1 in start) for i in $MACS; do # You can also add "-I INPUT", but it is sufficient # to block forwarding, since the delinquent will get # the routing but no (internet) connectivity. iptables -I FORWARD -m mac --mac-source $i -j DROP done iptables -I INPUT -i tap+ -j ACCEPT iptables -I OUTPUT -o tap+ -j ACCEPT iptables -I FORWARD -i tap+ -j ACCEPT iptables -I FORWARD -o tap+ -j ACCEPT iptables -I POSTROUTING -t nat -o tap+ -s 192.168.1.0/24 -j SNAT --to-source 10.62.X.X ;; stop) for i in $MACS; do iptables -D FORWARD -m mac --mac-source $i -j DROP done ;; esac