# Software > OpenWrt >  openwrt για hotspot - redirection σε squid proxy

## xaotikos

Έστησα ένα openWRT σε ένα WRTGS με σκοπό να το χρησιμοποιήσω για free hotspot. 

Το σκεπτικό είναι να δίνει το WRT αυτόματα μια ip στο 10.0.0.χ και να κάνει redirect όλα τα requests στον ubuntu server που τρέχει squid.

Ο squid είναι ρυθμισμένος να παίζει transparently (δεν βάζω και το χέρι μου στην φωτιά αλλά έχω βάλει http_port 3128 transparent μιας και είναι v2.6).

Προσπάθησα να κάνω το redirection με iptables στο WRT αλλά ή κάτι δεν κάνω καλά ή...

Λοιπόν, έχουμε και λέμε:

Σαν rule στο openwrt βάζω


```
iptables -t nat -A PREROUTING -s br2 -p tcp -j DNAT --to 192.168.1.10:3128
```

 όπου br2 το wireless if του WRT και 192.168.1.10 η διεύθυνση του squid.

Στο WRT αφού δέχετε την εισαγωγή του rule δεν το βλέπω πουθενά:


```
[email protected]:~$ iptables -L -vn
Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID 
  934 94686 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp option=!2 flags:0x02/0x02 
  223 34616 input_rule  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 input_wan  all  --  vlan1  *       0.0.0.0/0            0.0.0.0/0           
  223 34616 LAN_ACCEPT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     47   --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 REJECT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with tcp-reset 
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable 

Chain FORWARD (policy DROP 6 packets, 312 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID 
    9   468 TCPMSS     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x06/0x02 TCPMSS clamp to PMTU 
    0     0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    9   468 forwarding_rule  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 forwarding_wan  all  --  vlan1  *       0.0.0.0/0            0.0.0.0/0           
    3   156 ACCEPT     all  --  br0    br0     0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     all  --  br0    vlan1   0.0.0.0/0            0.0.0.0/0           
    0     0 MINIUPNPD  all  --  vlan1  !vlan1  0.0.0.0/0            0.0.0.0/0           

Chain LAN_ACCEPT (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 RETURN     all  --  vlan1  *       0.0.0.0/0            0.0.0.0/0           
  223 34616 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain MINIUPNPD (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID 
  905  133K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
  514  175K output_rule  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
  514  175K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 REJECT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with tcp-reset 
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable 

Chain forwarding_rule (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain forwarding_wan (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain input_rule (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain input_wan (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain output_rule (1 references)
 pkts bytes target     prot opt in     out     source               destination
```

Μήπως δεν υπάρχει τέτοιο chain ή interface?(ίσως λέω και βλακείες)



```
[email protected]:~$ ifconfig 
br0       Link encap:Ethernet  HWaddr 00:0F:66:C8:90:A9  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1126 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1216 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:115370 (112.6 KiB)  TX bytes:291846 (285.0 KiB)

br2       Link encap:Ethernet  HWaddr 00:0F:66:C8:90:AB  
          inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:426 errors:0 dropped:0 overruns:0 frame:0
          TX packets:338 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:35795 (34.9 KiB)  TX bytes:51682 (50.4 KiB)
```

Το WRT τρέχει x-wrt με whiterussian την τελευταία έκδοση. Έχω βάλει την έκδοση x-wrt με whiterussian. 

Αν βάλω στον browser σε ένα μηχάνημα του lan ο proxy παίζει μια χαρά. Transparent δεν έχω δοκιμάσει αν παίζει...φαντάζομαι πρέπει να βάλω τα ανάλογα rules στο μηχάνημα που τρέχει ο squid. 
Πάντως από το wireless interface του WRT δεν παίζει.

----------


## xaotikos

Τελικά είδα ότι τα rules των iptables τα παίρνει και τα βλέπω με 

```
iptables -L -t nat -nv
```

.

Επίσης ο proxy παίζει transparently (τον δοκίμασα).

Αυτό που δεν μπορώ να κάνω είναι να δίνει το WRT στους clients μια ip από subnet της eth1 (br1) του WRT (wireless) - 10.0.0.x και κάθε request να το στέλνει στο squid box μέσω του eth0 (br0) του WRT -192.168.1.x.

Κάθε βοήθεια δεκτή (έστω και με tunnel μεταξύ WRT/squid box  :: )

----------


## trendy

Κάπου είχε ρωτήσει ο TheLaz πώς να κάνει redirect, κάνε μία αναζήτηση.

----------


## xaotikos

Δεν βρήκα κάτι αλλά τελικά δημιούργησα ένα virtual interface στην lan κάρτα μου και την έβαλα στο ίδιο subnet με το AP. 
τελικά 
Τώρα μένει να βρω πως στήνω σωστά firewall με iptables ώστε να στέλνει τους clients στον proxy (το έκανα) αλλά να επιτρέπει συνδέσεις σε irc servers, yahoo κλπ.

Κατά τα άλλα το hotspot παίζει και σε λίγο θα ανεβάσω και νέα του  ::

----------


## trendy

http://iptables-tutorial.frozentux.n...-tutorial.html

----------


## xaotikos

merci

----------

