
02-10-2015, 13:08
|
 |
Corsario
|
|
Registrado: 11-12-2006
Localización: Indignao por los Golfos de Valencia
Edad: 64
Mensajes: 1,759
Agradecimientos que ha otorgado: 849
Recibió 754 Agradecimientos en 335 Mensajes
Sexo: 
|
|
Re: Proyecto OpenPlotter
Hola Sailoog y resto de openplottaneos.
Cuando estoy un puerto con wifi me suelo conectar a internet través de un router NanoStation LOCO M2 que emplazo en el exterior con una abrazadera de quita-y-pon. La antena del router me suele dar muchísima mejor calidad que la de cualquier pincho USB o la antena interna de los propios dispositivos

También me gusta utilizar la pi como punto de acceso del resto de dispositivos que tengo en el barco (tablets, móviles, portátiles, etc.) y para ello conecto el router a la pi por el puerto ethernet y hago que la pi enroute todo el tráfico de la Wifi al router y viceversa a través de la ethernet. Para ello he realizado las siguientes modificaciones en openplotter que no le restan ninguna de las funcionalidades que ya tiene.
Lo primero es activar el IP Forwarding:
Editando /etc/sysctl.conf y descomentando (quitándole la #) la línea siguiente
Código:
#net.ipv4.ip_forward=1
A continuación, aplicamos las reglas IPTABLES que permiten redirigir el tráfico entre las dos interfaces:
Código:
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
Guardamos las reglas aplicadas en este momento en un fichero para poder cargarlas al arrancar el sistema (ya que las reglas de IPTABLES se pierden al apagar el sistema)
Código:
sudo iptables-save > /etc/network/iptables.default
y por último modificamos el archivo /home/pi/.config/openplotter/wifi_server.py en la línea 74 añadiéndole al final:
Código:
\nup iptables-restore < /etc/network/iptables.default
Para que sea:
Código:
data='# interfaces(5) file used by ifup(8) and ifdown(8)\nauto lo\niface lo inet loopback\n\nauto '+wlan+'\niface '+wlan+' inet static\naddress 10.10.10.1\nnetmask 255.255.255.0\nup iptables-restore < /etc/network/iptables.default'
De esta manera, cuando ponemos openplotter en modo punto de acceso wifi (utilizando wlan0), si la pi tiene una conexión a internet por la ethernet, entonces enruta todo el tráfico de la wifi a internet.
Desde luego que el procedimiento que planteo está restringido a que el punto de acceso se monte en wlan0, pero seguro que se podría generalizar.
Y esto es todo, lo pongo por si consideráis que se podría añadir a openplotter para la próxima versión.
__________________
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
El mar es de TODOS.
Lo que es de TODOS, NO ES MÍO.
"No hay nada como el MAR" Tinico N'Hielo
|