Il collegamento dei dispositivi avviene, esiste in piedi una rete tra i due: quindi escluderei a questo punto il discorso bluetooth. Sintetizzando:
Sul PC vedo l'interfaccia di rete chiamata "bnep0" con IP 10.0.0.1 impostato da me con una regola di udev (cui ha collaborato anche l'utente "miklos" che ringrazio).
All'atto del collegamento del telefono, inoltre il PC su cui gira dnsmasq, gli attribuisce un ip compreso tra 10.0.0.2 e 10.0.0.4, in questo momento l'indirizzo che il telefono ha ricevuto è 10.0.0.4.
I due indirizzi sono raggiungibili da l'una e dall'altra parte rispettivamente, cioè se dò un ping dal PC verso 10.0.0.4 risponde correttamente. Sul telefono, posso fare lo stesso grazie ad un emulatore di terminale che ho installato dal google store di android. Se da lì digito "ping 10.0.0.1" ottengo una regolare risposta da parte del PC. Perfetto!
Ora però vorrei configurare il PC in modo che instradasse le richieste provenienti dal telefono, attraverso l'interfaccia "bnep0", quindi verso internet (10.0.0.1 ---> ppp0) e ne riconsegnasse la rispettiva risposta allo stesso telefono sempre attraverso l'interfaccia bnep0 (10.0.0.1 ---> 10.0.0.4).
La connessione ad internet sul PC avviene in dialup, senza router o altro e l'nterfaccia affacciata ad internet è "ppp0".
Al momento vorrei testare la cosa senza introdurre regole aggiuntive del firewall per bloccare particolari pacchetti. Mi basta che la macchia faccia da gateway e basta, senza firewall attivo.
Dalla documentazione che ho letto (e soprattutto da quella poca che ho capito) sembrerebbe sufficiente tabilire la regola:
Codice: Seleziona tutto
iptables -t nat -A POSTROUTING -s 10.0.0.4 -o ppp0 -j MASQUERADE
Però se dal telefono tento un ping verso un host esterno: tipo 8.8.8.8, oppure per esempio "maya.ngi.it". Ecco che non riesco ad ottenere una risposta. Ne tanto meno riesco a navigare dal cellulare o fare altro che richieda l'accesso ad internet.
Che sia un problema di instradamento?
Vi lascio un po' di log ottenuti sul PC.
Codice: Seleziona tutto
root@darkstar:~# ifconfig
bnep0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.1 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::209:ddff:fe50:2f9c prefixlen 64 scopeid 0x20<link>
ether 00:09:dd:50:2f:9c txqueuelen 1000 (Ethernet)
RX packets 4207 bytes 260517 (254.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 402 bytes 37449 (36.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 16436
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 4786 bytes 543537 (530.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4786 bytes 543537 (530.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
inet x.x.x.x netmask 255.255.255.255 destination 10.64.64.64
ppp txqueuelen 3 (Point-to-Point Protocol)
RX packets 254435 bytes 332890913 (317.4 MiB)
RX errors 5 dropped 0 overruns 0 frame 0
TX packets 159062 bytes 11073368 (10.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
root@darkstar:~# ip addr show>>log
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
link/ether 00:22:15:3c:38:66 brd ff:ff:ff:ff:ff:ff
8: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 3
link/ppp
inet x.x.x.x peer 10.64.64.64/32 scope global ppp0
16: bnep0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 00:09:dd:50:2f:9c brd ff:ff:ff:ff:ff:ff
inet 10.0.0.1/24 brd 10.0.0.255 scope global bnep0
inet6 fe80::209:ddff:fe50:2f9c/64 scope link
valid_lft forever preferred_lft forever
root@darkstar:~# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 ppp0
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 bnep0
10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
root@darkstar:~# iptables -L -v
Chain INPUT (policy ACCEPT 246K packets, 326M bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 151K packets, 10M bytes)
pkts bytes target prot opt in out source destination
Le cause potrebbero essere molteplici...
Proprio per questo alla fine ho deciso di chiedere qui. Almeno per cercare di capire se ci sia qualche errore nella mia configurazione almeno del PC.
Grazie in anticipo come al solito!