AtelierCanal2013 » Historique » Version 24
Version 23 (Laurent GUERBY, 18/01/2015 20:13) → Version 24/37 (Laurent GUERBY, 27/01/2015 11:00)
{{>toc}}
h1. AtelierCanal2013
h2. Objectif
Wifi pour les peniches du parc du canal a Ramonville
Contact ok planet science pour test puis install
Contact TODO capitainerie via planet science
h2. Routage
L'idée est d'utiliser la connection internet d'un sympathisant (ici ADSL chez Planet Science) pour en faire un depart reseau 5 GHz avec un routage en IPv4 publique vers l'adherent sans en utiliser sur les intermediaires. Cela peut se faire facilement avec tunnel openwrt sur un PC Linux mais en pratique on peut aussi le faire avec un simple TP-Link 740N sous Openwrt qui a l'avantage d'un faible prix (16 euros) et faible encombrement/consomation, parfaitement silencieux.
h3. Sur le routeur gw a Paris
qui a pour ip publique IP_ROUTEUR_PARIS
<pre>
openvpn --mktun --dev-type tun --dev tunpsp
ip link set tunpsp up
openvpn --dev tunpsp --dev-type tun --cipher none --auth none --port PORT_NUMBER --verb 3 --proto tcp-server --daemon --log-append SOME_LOG --keepalive 10 60
ip addr add 10.0.28.1/24 dev tunpsp
ip route add IP_PUBLIQUE/32 dev tunpsp
</pre>
Ne pas oublier de mettre la route sur h3 (les dev tun ne se propagent pas par bird 1.2.x visiblement).
h3. Sur le 740N a Planet science
- port WAN branché sur le reseau local de planet science (donc la box ADSL)
- port LAN vers l'antenne 5 GHz AP
network / interfaces
Wifi : disable
br-lan : IPv4 statique 192.168.1.1/24 + disable DHCP
wan : DHCP client
system / software
install packages : openvpn-devel-nossl ip
Pour ipv6 : kmod-ipv6 ip6tables kmod-ip6tables radvd luci-app-radvd
adds implicitely: libip6tc libdaemon
system / startup
openvpn disable
firewall disable
system / startup / local startup
<pre>
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
openvpn --mktun --dev-type tun --dev tunpsp
ip li set tunpsp up
ip a a 10.0.28.2/24 dev tunpsp
openvpn --dev tunpsp --dev-type tun --lport 0 --remote IP_ROUTEUR_PARIS PORT_NUMBER --proto tcp-client --daemon --keepalive 10 60
ip route add 10.0.28.0/24 dev tunpsp table 25
ip route add default via 10.0.28.1 dev tunpsp table 25
ip rule add from 10.0.28.2 table 25
ip route add IP_PUBLIQUE/32 dev br-lan
ip rule add from IP_PUBLIQUE/32 table 25
exit 0
</pre>
h3. Antennes AP et STA
Les antennes 5 GHz sont en bridge avec des IP admin locales
192.168.1.21/24 AP planet science
192.168.1.22/24 STA adherent 1
...
h3. Sur le 740N adherent
sur routeur client
- port WAN sur l'antenne STA 5 GHz client
- port LAN et wifi = br-lan = reseau local
system / software
*important* installer le paquet : ip
network / interfaces
wan static address IP_PUBLIQUE/32
use DNS IP_DNS
system / startup / local startup
<pre>
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
ip route add 192.168.1.0/24 dev eth1
ip route add default via 192.168.1.1
exit 0
</pre>
h2. IPv6
TODO
h2. Modele financier
* 20 (740N sur box) + 60 (LocoM5 AP) = 80 euros de setup (+ cables)
* 20 (740N LAN adherent) + 60 (LocoM5 STA) = 80 euros/adherent (+ cables)
* participation eventuelle a la connection ADSL du local
* total 160 euros + cables + participation
Pour 1 adherent 160 euros, 8 mois d'amortissement avec 20/mois
Pour 2 adherents 240 euros, 6 mois d'amortissement avec 20+20/mois
h2. Liens
http://wiki.freifunk.net/images/7/73/Vortrag.pdf
<pre>
echo 50 XY »/etc/iproute2/rt tables
ip rule add from $HNA/$MSK prio 30002 table XY
ip rule add to $HNA/$MSK prio 30001 lookup main
ip route add default \
via $TUNNEL NEIGH IP \
dev $TUNNEL DEV \
table XY
ip route flush cache
ip tunnel \
add tunnel0 \
mode ipip \
remote 10.10.1.1 \
local 10.10.99.1 \
compress lzo
ip link set dev ipip0 up
ip address add 172.16.1.2/24 dev tunnel0
</pre>
h2. Version 2014
Rue de l'ukraine
Sur h7 :
<pre>
openvpn --mktun --dev-type tun --dev tunukr
ip link set tunukr up
openvpn --dev tunukr --dev-type tun --cipher none --auth none --port 65114 --verb 3 --proto udp --local 91.224.148.1 --daemon --log-append /root/vpn/65114.log --keepalive 10 60
ip addr add 10.0.129.1/24 dev tunukr
ip route add 172.31.129.0/24 dev tunukr
</pre>
Sur 740N rc.local :
<pre>
openvpn --mktun --dev-type tun --dev tunukr
ip link set tunukr up
ip addr add 10.0.129.2/24 dev tunukr
openvpn --dev tunukr --dev-type tun --lport 0 --remote 91.224.148.1 65114 --proto udp --daemon --keepalive 10 60
ip route add default dev tunukr table 25
ip -6 route add default dev tunukr table 25
ip route add 172.31.129.0/24 dev br-lan table 25
ip rule add from 10.0.129.2 table 25
ip rule add from 172.31.129.0/24 lookup 25
ip addr add 89.234.156.0/32 dev br-lan
ip -6 addr add fe80::31/64 dev br-lan
</pre>
WAN: DHCP
LAN: 172.31.129.1/24
h2. Version 2015
Sur le 740N de routage ADSL Montescot
packages a installer sur attitude adjustment : openvpn-devel-nossl ip kmod-ipv6
<pre>
opkg update
opkg install openvpn-devel-nossl ip kmod-ipv6
</pre>
Attention : j'utilise OpenWRT attitude adjustment 12.09 pour les 740N de tunnel car avec barrier breaker /etc/rc.local s'execute avant le up des interfaces reseau. J'ai pas cherché a creuser, il doit y avoir une solution en y passant un peu de temps (d'un autre coté la 12.09 est extraordinairement stable avec le setup tunnel, on n'a jamais eu le moindre soucis et des uptime > 6 mois).
<pre>
openvpn --mktun --dev-type tun --dev tunmts
ip link set tunmts up
openvpn --dev tunmts --dev-type tun --lport 0 --proto udp --daemon --remote IP PORT --keepalive 10 60
ip addr add 10.0.200.2/24 dev tunmts
ip route add default dev tunmts table 25
ip -6 route add default dev tunmts table 25
ip rule add from all iif tunmts table 25
ip -6 rule add from all iif tunmts table 25
ip rule add from all iif br-lan table 25
ip -6 rule add from all iif br-lan table 25
ip rule add from 10.0.200.2 table 25
ip route add 172.31.200.0/24 dev br-lan table 25
ip -6 addr add fe80::31/64 dev br-lan
ip addr add 89.234.156.0/32 dev br-lan
ip route add 89.234.156.35/32 dev br-lan table 25
ip -6 route add 2a01:6600:8083:2300::/56 via fe80::83:23 dev br-lan table 25
</pre>
Pour une machine Linux ne pas oublier :
<pre>
echo 1 > /proc/sys/net/ipv4/ip_forward
for i in /proc/sys/net/ipv6/conf/*; do for j in autoconf accept_ra; do echo 0 > $i/$j; done;done
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
</pre>
h1. AtelierCanal2013
h2. Objectif
Wifi pour les peniches du parc du canal a Ramonville
Contact ok planet science pour test puis install
Contact TODO capitainerie via planet science
h2. Routage
L'idée est d'utiliser la connection internet d'un sympathisant (ici ADSL chez Planet Science) pour en faire un depart reseau 5 GHz avec un routage en IPv4 publique vers l'adherent sans en utiliser sur les intermediaires. Cela peut se faire facilement avec tunnel openwrt sur un PC Linux mais en pratique on peut aussi le faire avec un simple TP-Link 740N sous Openwrt qui a l'avantage d'un faible prix (16 euros) et faible encombrement/consomation, parfaitement silencieux.
h3. Sur le routeur gw a Paris
qui a pour ip publique IP_ROUTEUR_PARIS
<pre>
openvpn --mktun --dev-type tun --dev tunpsp
ip link set tunpsp up
openvpn --dev tunpsp --dev-type tun --cipher none --auth none --port PORT_NUMBER --verb 3 --proto tcp-server --daemon --log-append SOME_LOG --keepalive 10 60
ip addr add 10.0.28.1/24 dev tunpsp
ip route add IP_PUBLIQUE/32 dev tunpsp
</pre>
Ne pas oublier de mettre la route sur h3 (les dev tun ne se propagent pas par bird 1.2.x visiblement).
h3. Sur le 740N a Planet science
- port WAN branché sur le reseau local de planet science (donc la box ADSL)
- port LAN vers l'antenne 5 GHz AP
network / interfaces
Wifi : disable
br-lan : IPv4 statique 192.168.1.1/24 + disable DHCP
wan : DHCP client
system / software
install packages : openvpn-devel-nossl ip
Pour ipv6 : kmod-ipv6 ip6tables kmod-ip6tables radvd luci-app-radvd
adds implicitely: libip6tc libdaemon
system / startup
openvpn disable
firewall disable
system / startup / local startup
<pre>
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
openvpn --mktun --dev-type tun --dev tunpsp
ip li set tunpsp up
ip a a 10.0.28.2/24 dev tunpsp
openvpn --dev tunpsp --dev-type tun --lport 0 --remote IP_ROUTEUR_PARIS PORT_NUMBER --proto tcp-client --daemon --keepalive 10 60
ip route add 10.0.28.0/24 dev tunpsp table 25
ip route add default via 10.0.28.1 dev tunpsp table 25
ip rule add from 10.0.28.2 table 25
ip route add IP_PUBLIQUE/32 dev br-lan
ip rule add from IP_PUBLIQUE/32 table 25
exit 0
</pre>
h3. Antennes AP et STA
Les antennes 5 GHz sont en bridge avec des IP admin locales
192.168.1.21/24 AP planet science
192.168.1.22/24 STA adherent 1
...
h3. Sur le 740N adherent
sur routeur client
- port WAN sur l'antenne STA 5 GHz client
- port LAN et wifi = br-lan = reseau local
system / software
*important* installer le paquet : ip
network / interfaces
wan static address IP_PUBLIQUE/32
use DNS IP_DNS
system / startup / local startup
<pre>
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
ip route add 192.168.1.0/24 dev eth1
ip route add default via 192.168.1.1
exit 0
</pre>
h2. IPv6
TODO
h2. Modele financier
* 20 (740N sur box) + 60 (LocoM5 AP) = 80 euros de setup (+ cables)
* 20 (740N LAN adherent) + 60 (LocoM5 STA) = 80 euros/adherent (+ cables)
* participation eventuelle a la connection ADSL du local
* total 160 euros + cables + participation
Pour 1 adherent 160 euros, 8 mois d'amortissement avec 20/mois
Pour 2 adherents 240 euros, 6 mois d'amortissement avec 20+20/mois
h2. Liens
http://wiki.freifunk.net/images/7/73/Vortrag.pdf
<pre>
echo 50 XY »/etc/iproute2/rt tables
ip rule add from $HNA/$MSK prio 30002 table XY
ip rule add to $HNA/$MSK prio 30001 lookup main
ip route add default \
via $TUNNEL NEIGH IP \
dev $TUNNEL DEV \
table XY
ip route flush cache
ip tunnel \
add tunnel0 \
mode ipip \
remote 10.10.1.1 \
local 10.10.99.1 \
compress lzo
ip link set dev ipip0 up
ip address add 172.16.1.2/24 dev tunnel0
</pre>
h2. Version 2014
Rue de l'ukraine
Sur h7 :
<pre>
openvpn --mktun --dev-type tun --dev tunukr
ip link set tunukr up
openvpn --dev tunukr --dev-type tun --cipher none --auth none --port 65114 --verb 3 --proto udp --local 91.224.148.1 --daemon --log-append /root/vpn/65114.log --keepalive 10 60
ip addr add 10.0.129.1/24 dev tunukr
ip route add 172.31.129.0/24 dev tunukr
</pre>
Sur 740N rc.local :
<pre>
openvpn --mktun --dev-type tun --dev tunukr
ip link set tunukr up
ip addr add 10.0.129.2/24 dev tunukr
openvpn --dev tunukr --dev-type tun --lport 0 --remote 91.224.148.1 65114 --proto udp --daemon --keepalive 10 60
ip route add default dev tunukr table 25
ip -6 route add default dev tunukr table 25
ip route add 172.31.129.0/24 dev br-lan table 25
ip rule add from 10.0.129.2 table 25
ip rule add from 172.31.129.0/24 lookup 25
ip addr add 89.234.156.0/32 dev br-lan
ip -6 addr add fe80::31/64 dev br-lan
</pre>
WAN: DHCP
LAN: 172.31.129.1/24
h2. Version 2015
Sur le 740N de routage ADSL Montescot
packages a installer sur attitude adjustment : openvpn-devel-nossl ip kmod-ipv6
<pre>
opkg update
opkg install openvpn-devel-nossl ip kmod-ipv6
</pre>
Attention : j'utilise OpenWRT attitude adjustment 12.09 pour les 740N de tunnel car avec barrier breaker /etc/rc.local s'execute avant le up des interfaces reseau. J'ai pas cherché a creuser, il doit y avoir une solution en y passant un peu de temps (d'un autre coté la 12.09 est extraordinairement stable avec le setup tunnel, on n'a jamais eu le moindre soucis et des uptime > 6 mois).
<pre>
openvpn --mktun --dev-type tun --dev tunmts
ip link set tunmts up
openvpn --dev tunmts --dev-type tun --lport 0 --proto udp --daemon --remote IP PORT --keepalive 10 60
ip addr add 10.0.200.2/24 dev tunmts
ip route add default dev tunmts table 25
ip -6 route add default dev tunmts table 25
ip rule add from all iif tunmts table 25
ip -6 rule add from all iif tunmts table 25
ip rule add from all iif br-lan table 25
ip -6 rule add from all iif br-lan table 25
ip rule add from 10.0.200.2 table 25
ip route add 172.31.200.0/24 dev br-lan table 25
ip -6 addr add fe80::31/64 dev br-lan
ip addr add 89.234.156.0/32 dev br-lan
ip route add 89.234.156.35/32 dev br-lan table 25
ip -6 route add 2a01:6600:8083:2300::/56 via fe80::83:23 dev br-lan table 25
</pre>
Pour une machine Linux ne pas oublier :
<pre>
echo 1 > /proc/sys/net/ipv4/ip_forward
for i in /proc/sys/net/ipv6/conf/*; do for j in autoconf accept_ra; do echo 0 > $i/$j; done;done
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
</pre>