come da titolo vorrei condividere l'ADSL tra il fisso e il portatile attraverso bluetooth, ma c'è qualcosa che sbaglio (sicuramente, altrimenti riuscirei a connettermi
).In sostanza l'idea è di collegarmi ad Internet dal portatile (Mandriva 2010.2) sfruttando bluetooth "passando" dal PC fisso (Slackware 13.1): in sostanza "entro" con il portatile dall'interfaccia bluetooth (bnep0-pan0 sul quale ho fatto un bridging) poi faccio un forwarding sull'interfaccia eth0. Detto così è intuitivo e facile, in pratica c'è qualche intoppo.
Dico subito che la scheda di rete è connessa ad un modem (192.168.100.1) Telecom Alice DSL-302T Quello che segue è l'ouput di ifconfig dopo la configurazione:
- Codice: Seleziona tutto
bash-4.1# ifconfig
bnep0 Link encap:Ethernet HWaddr 00:09:dd:50:82:1a
inet6 addr: fe80::209:ddff:fe50:821a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:46 errors:0 dropped:0 overruns:0 frame:0
TX packets:25 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:8928 (8.7 KiB) TX bytes:1633 (1.5 KiB)
eth0 Link encap:Ethernet HWaddr 00:a0:d2:1b:73:86
inet6 addr: fe80::2a0:d2ff:fe1b:7386/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:44861 errors:0 dropped:0 overruns:0 frame:0
TX packets:51023 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:28804977 (27.4 MiB) TX bytes:30937108 (29.5 MiB)
Interrupt:17 Base address:0x1c00
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:64 errors:0 dropped:0 overruns:0 frame:0
TX packets:64 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3688 (3.6 KiB) TX bytes:3688 (3.6 KiB)
pan0 Link encap:Ethernet HWaddr 00:09:dd:50:82:1a
inet addr:10.0.0.1 Bcast:10.255.255.255 Mask:255.0.0.0
inet6 addr: fe80::e401:88ff:fe1f:d414/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:27 errors:0 dropped:0 overruns:0 frame:0
TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:4932 (4.8 KiB) TX bytes:1042 (1.0 KiB)
ppp0 Link encap:Point-to-Point Protocol
inet addr:82.51.154.186 P-t-P:192.168.100.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:44697 errors:0 dropped:0 overruns:0 frame:0
TX packets:50854 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:27811668 (26.5 MiB) TX bytes:29806989 (28.4 MiB)
bash-4.1#
In sostanza il fisso ha indirizzo (pan0-bnep0) 10.0.0.1 e il portatile 10.0.0.2: un ping dal fisso al portatile e viceversa da esito positivo (in sostanza il fisso vede il portatile e viceversa). A questo punto ho attivato il forwarding:
- Codice: Seleziona tutto
echo 1 > /proc/sys/net/ipv4/ip_forward
e ho attivato il packet filtering su tutte le interfacce, sinteticamente,
- Codice: Seleziona tutto
echo > 1 /proc/sys/net/ipv4/conf/*/rp_filter
Prima di impostare le regole con iptables avevo:
- Codice: Seleziona tutto
bash-4.1# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Quindi ho impostato le regole iptables come da comandi che seguono:
bash-4.1# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
bash-4.1# iptables -A FORWARD -i pan0 -j ACCEPT
bash-4.1# iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
quindi iptables -L fornisce ora:
- Codice: Seleziona tutto
bash-4.1# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Domanda: perché il portatile vede la rete (in sostanza si collega al gateway cioè il PC fisso con indirizzo 10.0.0.1) però non si collega ad Internet? ...dove ho toppato con iptables?
...è giusto fare il forwarding su eth0 o dovrei farlo (non credo però) su ppp0?...spero di aver dato tutte le informazioni del caso...




