LINUX.ORG.RU

Не пингуется компьютер в VPN

 ,


0

1

Добрый день! У меня роутер, на роутере PPTP-сервер, за роутером включённый компьютер. Я подключаюсь к PPTP-серверу роутера через network-manager с ноутбука из интернета. На роутер (192.168.1.1) могу зайти, компьютер (192.168.1.100) на роутере отображается как «в сети», но пинги с ноутбука по его адресу не ходят. При подключении к VPN того же роутера с Android-телефона компьютер видится и пингуется. Пожалуйста, подскажите, чяднт, и как починить.

★★

Последнее исправление: Norong (всего исправлений: 4)

Скорее всего, на вашем ноуте не прописывается маршрут к нужном компьютеру через VPN, а на android в VPN прописывается default route.

mky ★★★★★
()
Ответ на: комментарий от Norong

На ноутбуке можно настроить вручную с помощью ip route, но лучше, наверное, почитать, как это автоматизировать.
Можно, например, положить скрипты в /etc/ppp/ip-up.d/ и /etc/ppp/ip-down.d/.

mathcrosp ★★
()
Ответ на: комментарий от Norong

Судя по тому, что под андройдом работает, маршрут нужно только на ноуте прописывать, на роуте делать ничего не надо.

Сначала прописываете маршрут ручками, при поднятом VPN как-то так:

sudo /sbin/ip route add 192.168.1.0/24 dev ppp0

Потом, если это помогло, пробуете сделать добавление маршрута средствами NM: ″Edit connections -> vpn -> edit -> IPv4 Settings -> Routes″. Только NM глючная вещь, если она не будет добавлять маршруты как задумано, удивляться не стоит.

mky ★★★★★
()
7 февраля 2017 г.
Ответ на: комментарий от mky

Добрый день! Я тут снова вернулся к этому вопросу (почему-то тогда забыл ответить). После этой команды всё видится-пингуется, но я не совсем понимаю, что писать в Network Manager. Там 4 поля нужно заполнить: адрес, маска сети, шлюз, метрика. Подскажите, пожалуйста, что туда вписать. Заранее спасибо!

Norong ★★
() автор топика
Ответ на: комментарий от Norong

Вроде так:
адрес: 192.168.1.0
маска: 255.255.255.0
шлюз: 0.0.0.0
метрика: 0

Я не уверен насчёт шлюза, для point-to-point интерфейсов, к которым относится ppp, шлюз не существует, поэтому не так важно что там писать, но NetworkManager может оказаться против 0.0.0.0. Пробуйте.

mky ★★★★★
()
Ответ на: комментарий от mky

Против 0.0.0.0 NetworkManager взбунтовался - соединение к VPN вообще не проходило. Выставил 192.168.1.1 - адрес роутера - теперь подключение проходит, но через пару секунд после подключения соединение рвётся:

pppd: Modem hangup
pppd: MPPE disabled
pppd: Connection terminated
Вроде, когда просто через ip route add прописывал, такого не было. Не подскажете, где ту команду прописать, чтобы выполнялась автоматом при подключении к этой VPN-сети, и выполнялась обратная (delete) при отключении?

Norong ★★
() автор топика
Ответ на: комментарий от Norong

UPD. В эти несколько секунд перед обрывом компьютер хорошо пингуется по своему адресу в локальной сети.

Norong ★★
() автор топика
Ответ на: комментарий от Norong

Вы в NetworkManager'е галочку ″Use this connection only for resources on this network″ поставили?

Если галочка не помогает, и соединение рвётся, посмотрите в эти несколько секунд какие маршруты есть в системе ″sudo ip route″, может станет понятнее, из-за чего проблема.

выполнялась обратная (delete) при отключении?

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

А вот с прописыванием команды сложнее, так как условие «при подключении к этой VPN-сети» можно реализовать по разному, но нужно хоть чуть-чуть знать bash. Если у вас есть каталог ″/etc/ppp/ip-up.d/″ положите в него bash-скрип с одной командой:

#!/bin/bash
set > /tmp/ppp-env.txt
И выполнив подключение посмотрите в файле какие переменные среды установлены и определите, по значению какой переменной можно определить, что это именно «эта VPN-сеть».

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.