Приветствую!Недавно стал обладателем КПК htc hero на базе android. Все бы ничего, да только в нем не реализовано возможность использования прокси, когда телефон подключен к wifi сети. На форумах мне подсказали что в интернет вылезти возможно, нужно лишь "завернуть" android на squid (уже установлен) и настроить iptables. В линуксе новичек, пока еще разбираюсь как пользователь и данная задача для меня почти непосильная на данный момент, а телефон в интернет вывести все же хочется.
Вот какими правилами располагаю в данный момент:
*nat
:PREROUTING ACCEPT [19035:2349980]
:POSTROUTING ACCEPT [576:37534]
:OUTPUT ACCEPT [576:37534]
-A PREROUTING -s 192.168.0.10 -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128
-A PREROUTING -s 192.168.0.10 -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
COMMIT*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [7043:2658385]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p ipv6-crypt -j ACCEPT
-A RH-Firewall-1-INPUT -p ipv6-auth -j ACCEPT
-A RH-Firewall-1-INPUT -d 224.0.0.251/32 -p udp -m udp --dport 5353 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
# sysctl -a | grep net.ipv4.ip_forward
net.ipv4.ip_forward = 1Но странице в браузере телефона так и не открываются, в лог-файлах squid-а никаких обращений (. Подскажите как сделать правильно, спасибо!
ОС Mandriva 2010
>[оверквотинг удален]
> настроить iptables. В линуксе новичек, пока еще разбираюсь как пользователь и
> данная задача для меня почти непосильная на данный момент, а телефон
> в интернет вывести все же хочется.
> Вот какими правилами располагаю в данный момент:
> *nat
> :PREROUTING ACCEPT [19035:2349980]
> :POSTROUTING ACCEPT [576:37534]
> :OUTPUT ACCEPT [576:37534]
> -A PREROUTING -s 192.168.0.10 -i eth0 -p tcp -m tcp --dport 80
> -j DNAT --to-destination 192.168.0.1:3128тут добавить заворот для пакетов с кпк пришедшие через интерфейс wifi
> -A PREROUTING -s 192.168.0.10 -i eth0 -p tcp -m tcp --dport 80
> -j REDIRECT --to-ports 3128
> COMMIT
> *filter
> :INPUT ACCEPT [0:0]
> :FORWARD ACCEPT [0:0]
> :OUTPUT ACCEPT [7043:2658385]
> :RH-Firewall-1-INPUT - [0:0]тут разрешить входящие через интерфейс wifi на порт 3128
ну и прокси должен быть настроен.
>[оверквотинг удален]
> -A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
> -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22
> -j ACCEPT
> -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
> COMMIT
> # sysctl -a | grep net.ipv4.ip_forward
> net.ipv4.ip_forward = 1
> Но странице в браузере телефона так и не открываются, в лог-файлах squid-а
> никаких обращений (. Подскажите как сделать правильно, спасибо!
> ОС Mandriva 2010
> тут добавить заворот для пакетов с кпк пришедшие через интерфейс wifi
На линукс-машине у меня нет wifi-адаптера, КПК подсоединен через точку доступа, поэтому интерфейс у меня один - eth0
> тут разрешить входящие через интерфейс wifi на порт 3128
Squid настроен, но я сейчас испытываю трудности с написанием правил iptables. Можете дать подсказку что конкретно добавить или удалить в моем списке правил?
>> тут добавить заворот для пакетов с кпк пришедшие через интерфейс wifi
> На линукс-машине у меня нет wifi-адаптера, КПК подсоединен через точку доступа, поэтому
> интерфейс у меня один - eth0
>> тут разрешить входящие через интерфейс wifi на порт 3128
> Squid настроен, но я сейчас испытываю трудности с написанием правил iptables. Можете
> дать подсказку что конкретно добавить или удалить в моем списке правил?покажите:
ifconfig и route -n с линукс-машины.
ip и адрес шлюза с кпк
>>> тут добавить заворот для пакетов с кпк пришедшие через интерфейс wifi
>> На линукс-машине у меня нет wifi-адаптера, КПК подсоединен через точку доступа, поэтому
>> интерфейс у меня один - eth0
>>> тут разрешить входящие через интерфейс wifi на порт 3128
>> Squid настроен, но я сейчас испытываю трудности с написанием правил iptables. Можете
>> дать подсказку что конкретно добавить или удалить в моем списке правил?
> покажите:
> ifconfig и route -n с линукс-машины.
> ip и адрес шлюза с кпк# /sbin/route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.0.100 0.0.0.0 UG 0 0 0 eth0# /sbin/ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:76:16:2A:6C
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:76ff:fe16:2b2c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:158566020 errors:0 dropped:0 overruns:0 frame:0
TX packets:31674351 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:3883645423 (3.6 GiB) TX bytes:843703248 (804.6 MiB)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:481330 errors:0 dropped:0 overruns:0 frame:0
TX packets:481330 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:35043636 (33.4 MiB) TX bytes:35043636 (33.4 MiB)192.168.0.100 - шлюз сети
192.168.0.1 - linux машина (в качестве шлюза прописан 192.168.0.100)
192.168.0.10 - android (в качестве шлюза прописан 192.168.0.1)
>[оверквотинг удален]
> RUNNING MTU:16436 Metric:1
> RX packets:481330
> errors:0 dropped:0 overruns:0 frame:0
> TX packets:481330
> errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:0
> RX bytes:35043636
> (33.4 MiB) TX bytes:35043636 (33.4 MiB)
> 192.168.0.100 - шлюз сети
> 192.168.0.1 - linux машина (в качестве шлюза прописан 192.168.0.100)iptables -I INPUT -s 192.168.0.10 -i eth0 -p tcp --dport 3128 -j ACCEPT
>[оверквотинг удален]
>> errors:0 dropped:0 overruns:0 frame:0
>> TX packets:481330
>> errors:0 dropped:0 overruns:0 carrier:0
>> collisions:0 txqueuelen:0
>> RX bytes:35043636
>> (33.4 MiB) TX bytes:35043636 (33.4 MiB)
>> 192.168.0.100 - шлюз сети
>> 192.168.0.1 - linux машина (в качестве шлюза прописан 192.168.0.100)
> iptables -I INPUT -s 192.168.0.10 -i eth0 -p tcp --dport 3128 -j
> ACCEPTправило применил, попытался открыть страницу в браузере на кпк, включил tcpdump на linux машине. страница не открывается (
17:45:13.641646 IP (tos 0x0, ttl 64, id 18271, offset 0, flags [DF], proto TCP (6), length 60)
192.168.0.10.35753 > www.yandex.ru.http: Flags [S], cksum 0xe363 (correct), seq 2137046334, win 5840, options [sackOK,TS val 2685537 ecr 0,mss 1460,nop,wscale 1], length 0
17:45:13.641749 IP (tos 0xc0, ttl 64, id 59301, offset 0, flags [none], proto ICMP (1), length 88)
www.yandex.ru > 192.168.0.10: ICMP host www.yandex.ru unreachable - admin prohibited, length 68
IP (tos 0x0, ttl 63, id 18271, offset 0, flags [DF], proto TCP (6), length 60)
>[оверквотинг удален]
> 192.168.0.10.35753 > www.yandex.ru.http: Flags [S], cksum 0xe363 (correct),
> seq 2137046334, win 5840, options [sackOK,TS val 2685537 ecr 0,mss 1460,nop,wscale
> 1], length 0
> 17:45:13.641749 IP (tos 0xc0, ttl 64, id 59301, offset 0, flags [none],
> proto ICMP (1), length 88)
> www.yandex.ru > 192.168.0.10: ICMP host www.yandex.ru unreachable -
> admin prohibited, length 68
> IP (tos 0x0, ttl
> 63, id 18271, offset 0, flags [DF], proto TCP (6), length
> 60)а в логах squid что?
ЭЭЭ в конторе около 20 аппаратов на Android. Никаких прозрачных прокси и т.д. (дома тоже adsl+wifi 2640u). Все прекрасно работает.
Просто подключаюсь к WIFI (IP + MASK + DNS +GW отдает точка), все я в сети.
> ЭЭЭ в конторе около 20 аппаратов на Android. Никаких прозрачных прокси и
> т.д. (дома тоже adsl+wifi 2640u). Все прекрасно работает.
> Просто подключаюсь к WIFI (IP + MASK + DNS +GW отдает точка),
> все я в сети.Вы откуда пришли? Пиво пили?
Ох черт не внимательно прочитал, извините.