Не работают L2TP клиенты под Android и Iphone

Обсуждение оборудования и его настройки
cerebrum
Сообщения: 11
Зарегистрирован: 28 дек 2013, 18:40

Помогите в решении проблемы!
Поднят тестовый L2TP сервер, через который идёт раздача интернета (шлюз 192.168.100.1).
Клиенты на win xp, win 7, mac os заходят нормально (авторизуются, пингуются внешние хосты).
Клиенты под Android и Iphone - авторизуются, соединение устанавливается, но внешние хосты не пингуются (внешний dns 8.8.8.8 тоже недоступен)
Я так понял проблема в маршрутизации (но почему тогда клиенты под win xp, win 7, mac os работают нормально ?).
Подскажите, что сделать, чтобы Android и Iphone тоже нормально функционировали ???

Конфиг:

/ip address> print
# ADDRESS NETWORK INTERFACE
0 ;;; added by setup
192.168.100.100/24 192.168.100.0 ether1


/ip firewall nat> print
0 chain=srcnat action=masquerade src-address=192.0.0.0/24


/ip ipsec> export
# RouterOS 5.24
/ip ipsec proposal
set [ find default=yes ] auth-algorithms=sha1 disabled=no enc-algorithms=3des lifetime=30m name=default pfs-group=modp1024
/ip ipsec peer
add address=0.0.0.0/0 auth-method=pre-shared-key dh-group=modp1024 disabled=no dpd-interval=disable-dpd dpd-maximum-failures=1 enc-algorithm=3des exchange-mode=main generate-policy=yes hash-algorithm=sha1 lifebytes=0 lifetime=1d my-id-user-fqdn="" nat-traversal=yes port=500 proposal-check=obey secret=user send-initial-contact=yes


/ip pool> print
# NAME RANGES
0 userspool 192.0.0.2-192.0.0.254


/ip route> print
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
0 A S ;;; added by setup
0.0.0.0/0 192.168.100.1 1
1 ADC 192.168.100.0/24 192.168.100.100 ether1 0



/ppp> export
#
/ppp profile
set 0 change-tcp-mss=yes name=default only-one=default remote-ipv6-prefix-pool=none use-compression=default use-encryption=default use-ipv6=yes use-mpls=default use-vj-compression=default
set 1 change-tcp-mss=yes dns-server=8.8.8.8 idle-timeout=0s local-address=192.0.0.1 name=default-encryption only-one=default remote-address=userspool session-timeout=0s use-compression=default use-encryption=yes use-ipv6=yes use-mpls=default use-vj-compression=default
/ppp aaa
set accounting=yes interim-update=0s use-radius=no
/ppp secret
add caller-id="" disabled=no limit-bytes-in=0 limit-bytes-out=0 local-address=192.0.0.1 name=user password=user profile=default-encryption remote-address=192.0.0.100 routes="" service=l2tp


Аватара пользователя
simpl3x
Модератор
Сообщения: 1532
Зарегистрирован: 19 апр 2012, 14:03

ну а вы уверены, что проблема в маршрутизации? я думаю без jailbreak на яблокофоне не посмотреть таблицу маршрутов, а вот на ведроидах должно быть что то такое. гляньте.


cerebrum
Сообщения: 11
Зарегистрирован: 28 дек 2013, 18:40

simpl3x писал(а):ну а вы уверены, что проблема в маршрутизации? я думаю без jailbreak на яблокофоне не посмотреть таблицу маршрутов, а вот на ведроидах должно быть что то такое. гляньте.



android:/ # ip route list

0.0.0.0/1 dev ppp0 scope link
default via 192.168.100.1 dev wlan0
default via 192.168.100.1 dev wlan0 metric 345
128.0.0.0/1 dev ppp0 scope link
192.0.0.1 dev ppp0 proto kernel scope link src 192.0.0.100
192.168.100.0/24 dev wlan0 proto kernel scope link src 192.168.100.118 metric 345
192.168.100.1 dev wlan0 scope link


192.168.100.1 - wifi точка доступа
192.168.100.118 - получен андроидом по dhcp


Аватара пользователя
simpl3x
Модератор
Сообщения: 1532
Зарегистрирован: 19 апр 2012, 14:03

в общем
не ясно почему: 0.0.0.0/1 dev ppp0 scope link, что значит 0.0.0.0/1, по идее тут должен быть 0.0.0.0/0, но с другой стороны тут есть 128.0.0.0/1 dev ppp0 scope link, т.е. в сумме 0.0.0.0/1 и 128.0.0.0/1 даст 0.0.0.0/0. зачем его разбило на две половины, не понятно.
и 192.0.0.0/24 - эта сеть не приватная, вы вылезли за диапазон 192.168.0.0/16. сети для приватного использования 169.254.0.0/16, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12. все остальные сети для локальный сетей использовать не рекомендую.


cerebrum
Сообщения: 11
Зарегистрирован: 28 дек 2013, 18:40

simpl3x писал(а):в общем
не ясно почему: 0.0.0.0/1 dev ppp0 scope link, что значит 0.0.0.0/1, по идее тут должен быть 0.0.0.0/0, но с другой стороны тут есть 128.0.0.0/1 dev ppp0 scope link, т.е. в сумме 0.0.0.0/1 и 128.0.0.0/1 даст 0.0.0.0/0. зачем его разбило на две половины, не понятно.


Вот и я не пойму. Проверено не на одном девайсе под андроид.
На win 7, XP такого нет - там нормально прописывается маршрутизация.


cerebrum
Сообщения: 11
Зарегистрирован: 28 дек 2013, 18:40

Кто встречался с подобной проблемой, подскажите как решили plz ?


Аватара пользователя
simpl3x
Модератор
Сообщения: 1532
Зарегистрирован: 19 апр 2012, 14:03

Гляну в ближайшие пару дней у себя.
Я только не пойму, у вас еще и ipsec участвует в этом соединении?


cerebrum
Сообщения: 11
Зарегистрирован: 28 дек 2013, 18:40

simpl3x писал(а):Я только не пойму, у вас еще и ipsec участвует в этом соединении?


Стандартный ipsec+l2tp (без шифрования l2tp нет смысла использовать)


Аватара пользователя
simpl3x
Модератор
Сообщения: 1532
Зарегистрирован: 19 апр 2012, 14:03

не знаю, на 6.7 моем домашнем все завелось на iphone с полпинка.

Код: Выделить всё

/interface l2tp-server
add name=l2tp-in1 user=user
/interface l2tp-server server
set enabled=yes
/ppp secret
add local-address=192.168.77.1 name=user password=user remote-address=192.168.77.2
/ip ipsec proposal
set [ find default=yes ] enc-algorithms=3des
/ip ipsec peer
add dpd-interval=disable-dpd dpd-maximum-failures=1 enc-algorithm=3des generate-policy=port-override nat-traversal=yes secret=qqqq

может чего специфического не добавил?


cerebrum
Сообщения: 11
Зарегистрирован: 28 дек 2013, 18:40

simpl3x писал(а):не знаю, на 6.7 моем домашнем все завелось на iphone с полпинка.

Код: Выделить всё

/interface l2tp-server
add name=l2tp-in1 user=user
/interface l2tp-server server
set enabled=yes
/ppp secret
add local-address=192.168.77.1 name=user password=user remote-address=192.168.77.2
/ip ipsec proposal
set [ find default=yes ] enc-algorithms=3des
/ip ipsec peer
add dpd-interval=disable-dpd dpd-maximum-failures=1 enc-algorithm=3des generate-policy=port-override nat-traversal=yes secret=qqqq

может чего специфического не добавил?


Спасибо!!! Заработало!!!

У меня была 5.24, поставил 6.5

Создал принудительно интерфейс
/interface l2tp-server
add name=l2tp-in1 user=user

в чём именно было дело, так и не понял (версия, или то что зарезервировал интерфейс), но теперь работает.


Ответить