LINUX.ORG.RU
ФорумAdmin

При подключении к PPTP VPN пропадает интернет

 


0

1

Приветствую всех!

Для удаленного подключения к рабочему ПК, мне необходимо подключиться к сети VPN компании(PPTP), но при подключении пропадает интернет. Прочитал абсолютно все темы по данному вопросу, их не так уж и много. Пробовал абсолтно все, от галочки «Использовать подключение только для ресурсов этой сети»(интернет появляется, но впн не работает) и до попытки прописать маршруты самостоятельно(Опыта в этом мало).

Подскажите пожалуйста решение проблемы!

Linux Fedora 38 gnome.

Спасибо!

Это может быть связана с настройками безопасности. Не консультировались с отделом ИБ компании? Когда у нас сделали так(что инет не доступен при подключении к рабочей локалке) я сделал виртуалку, поставил на ней винду и использую её только для подключения к рабочей ВЧС. А на компе интернет остаётся в полном объёме.

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

Главный сисадмин в отпуске)

Тоже есть винда на виртуальной машине, но хотелось бы все таки из под линукса подключаться!

Судя по похожим темам, проблема довольно частая и одинаковая. На винде это решается просто снятием галочки «Использовать основной шлюз сети» в настройках ipv4. А вот на линуксе что-то сложновато с этой функцией..

saha5594
() автор топика

Протокол PPTP не поддерживает передачу маршрутов. Если вы маршрутизируете весь трафик в VPN, то VPN-сервер, по-видимому, блокирует выход в интернет (не маршрутизирует интернет через себя), а если вы не устанавливаете VPN шлюзом по умолчанию, через VPN-подключение маршрутизируется только тот диапазон адресов, из которого выдаётся IP-адрес клиенту.

Вам нужно узнать в компании, какие IP-диапазоны используются для внутренних ресурсов, и добавить маршруты до них.

ValdikSS ★★★★★
()

Также, возможно, у вашего VPN маршруты передаются через DHCP — это фича Windows-клиента, а Linux не запрашивает маршруты через DHCP.

Можете попробовать установить Wireshark на Windows, включить захват трафика, подключиться к VPN и посмотреть, какие маршруты передал сервер, после чего добавить такие же вручную в подключении на Linux.

ValdikSS ★★★★★
()

нужно посмотреть маршруты до подлючения и после ip r, после подключения маршрут в инет д.б. маршрутом по умолчанию, а маршрут к корпоративному ресурсу дополнительным, постепенно можно выяснить какие ресурсы в каких подсетях находятся и внести из в качестве дополнительных. Или узнать это все у сисадмина, ведь кто-то же выдает доступ к впн

zudwa
()
Ответ на: комментарий от ValdikSS

А можно как-то сделать основным шлюзом мою сеть, а не сеть ВПН?

Тогда ВПН будет использоваться как чистое подключение к локальной сети, без интернет ресурсов.

Например прописать nodefaultroute(Не основной шлюз по умолчанию) в конфиге подключения. Но этот параметр ничего не меняет в работе ВПН почему-то..

Кстати, использую networkmanager.

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

Без ВПН:

default via 192.168.43.1 dev wlo1 proto dhcp src 192.168.43.21 metric 600

46.146.226.247 via 192.168.43.1 dev wlo1 src 192.168.43.21

192.168.43.0/24 dev wlo1 proto kernel scope link src 192.168.43.21 metric 600

После включения ВПН:

default dev ppp0 proto static scope link metric 50

default via 192.168.43.1 dev wlo1 proto dhcp src 192.168.43.21 metric 600

10.15.1.10 dev ppp0 proto kernel scope link src 10.15.100.190

10.15.1.10 dev ppp0 proto kernel scope link src 10.15.100.190 metric 50

46.146.226.247 via 192.168.43.1 dev wlo1 src 192.168.43.21

46.146.226.247 via 192.168.43.1 dev wlo1 proto static metric 50

192.168.43.0/24 dev wlo1 proto kernel scope link src 192.168.43.21 metric 600

192.168.43.1 dev wlo1 proto static scope link metric 50

saha5594
() автор топика

но при подключении пропадает интернет

Но при этом подключение к рабочему ПК происходит или нет?

и до попытки прописать маршруты самостоятельно

Вы знаете какие маршруты прописывать или сложность в определение нужных маршрутов?

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

У меня сделано так: В /etc/ppp/peer/officePPTP:

#defaultroute

#replacedefaultroute

ipparam $TUNNEL

usepeerdns

Соединение поднимается скриптом, где:

/usr/bin/pon officePPTP

sh /usr/local/sbin/vpnroute.sh

а в vpnroute.sh, как вам выше и советовали, прописаны маршруты:

/usr/sbin/route add -net 192.168.125.0 netmask 255.255.255.0 gw 192.168.114.1

/usr/sbin/route add -net 192.168.126.0 netmask 255.255.255.0 gw 192.168.114.1

Вам нужно у ваших админов узнать нужные пулы сетей и адрес гейта.

sonny362
()
Последнее исправление: sonny362 (всего исправлений: 2)
Ответ на: комментарий от mky

1.Но при этом подключение к рабочему ПК происходит или нет?

По RDP не подключается, но внутренние веб страницы загружаются, которые работают только внутри сети. При этом доступа в интернет нет.

2.Вы знаете какие маршруты прописывать или сложность в определение нужных маршрутов?

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

В граф. интерфейсе NetworkManager есть возможность прописать маршрут вручную. Там есть такие поля: Адрес, Маска, Шлюз, Метрика. Если с первыми тремя пунктами есть понимание примерное - то метрика для меня что-то новое. Для чего она нужна?

В рабочей сети есть диапазон IP адресов клиентов: 10.15.100.0 - 10.15.100.255.

Правильно ли я понимаю, что мне нужно настроить ВПН так, чтобы он подключался только к этим адресам, а ко всем остальным доступ был через мою, основную сеть?

Так-же, есть DNS суффикс подключения, где мне его нужно указать? Параметр какой-то есть?

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

Может есть сторонние ВПН клиенты? По типу pptpvpn-free(Не помню точное название). В одной из тем, пользователь решил данную проблему с помощью использования стороннего ВПН клиента(сервиса).

Подскажите пожалуйста, если знаете. Обязательно подключение по PPTP.

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

Но вам ведь нужен RDP? Когда у вас весь трафик в ppp-соединение, и нет RDP, значит проблема не в маршрутах, а в RDP. Я уже не помню, но, вроде, линукс RDP клиент всегда имел проблемы с подключением к последней версии RDP, там ведь всё время протокол меняется.

Так что, возможно вам придётся запускать RDP из виртуалки, тогда может и pptp из виртуалки устанавливать, там и маршруты, поди, сами пропишутся.

Вам нужен не диапазон адресов клиентов, а диапазон адресов серверов, к которым подключаетесь. По ним маршрут и формировать.

Метрика нужна для одновременного существования двух одинаковых маршрутов, можете ставить 1. Шлюз в случае ppp-соединения фикция, но если нужно, прописывайте локальный адрес на ppp0 интерфейсе. Хотя, поди он у вас будет динамическим. Возможно проще будет прописывать маршрут с командной строки.

Вобще, если не знаете какой маршрут, можете прописать все локальные адреса (10.0.0.0/8, 192.168.0.0/16 и 172.16.0.0/12).

DNS-суффикс прописывается в /etc/resolv, но он общий на всю систему. Если вы по RDP подключаетесь по DNS-имени, то вам нужно будет прописывать DNS-сервера, чтобы они резолвили локальные DNS-имена вашей конторы. Возможно, лучше будет поставить локальный DNS-сервер и настроить его, чтобы за доменом конторы он ходил по локальным (маршрутизируемым в VPN) серверам, а за остальными к DNS-провайдера...

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

«Если вы по RDP подключаетесь по DNS-имени, то вам нужно будет прописывать DNS-сервера, чтобы они резолвили локальные DNS-имена вашей конторы.» За это отвечает usepeerdns.

sonny362
()
Ответ на: комментарий от saha5594

Ну ты же знаешь как мобильные провайдеры контролируют раздачу инета по мобильному, чтоб ты за это деньги платил - проверяют TTL. Если у тебя безопасник прошаренный, то он тоже может TTL контролировать чтоб исключить раздачу вашей сети с контролируемых устройств на не контролируемые, конечно, это решаемо, как с точки зрения тебя так и с точки зрения прошаренного злоумышленника, но проверить что это именно TTL можно. А вот всяких скрипткидди и прочих ботов может и отсеять.

Хотя как выше сказали маршруты более вероятная причина твоих проблем.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от sonny362

Сначала постите тупак, а потом пытаетесь хамить? Сходите, прочитайте. http://xgu.ru/wiki/Таблица_маршрутизации#:~:text=Как правило, выбирается наиб....

выбирается наиболее конкретный (то есть, с наболее длинной сетевой маской) маршрут из тех, которые соответствуют адресу отправителя

Если ТС добавит маршрут к 192.168.0.0/16 в ppp, то пакеты в его локалку все равно будут идти по маршруту 192.168.43.0/24.

Так что переживать:

человек всю свою локалку тоже в ppp завернул

не нужно. Да и не локалка это. Это — телефон интернет через wifi раздаёт.

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

Тупак было ваш высказывание:

Вы предлагаете, чтобы человек всю свою локалку тоже в ppp завернул?

Его вы как-то обошли стороной.

умолкаю

Правильно делаете. Советовать устаревшие команды ifconfig/route вместо замещающей их в современном linux'е команды ip умно, да. Особенно для Федоры, где по умолчанию давно нет ifconfig, а скоро может и совсем не быть.

Зачем советовать ТСу скрипт, когда он только в GUI в NetworkManager'а тыкается? С учётом того, что у ТС'а не проходит нужное ему RDP соедиенние при default-маршруте в ppp, называть ваше решение рабочим как-то амбициозно.

usepeerdns просто создаёт /etc/ppp/resolv.conf, скопирует этот файл в /etc/resolv.conf отдельный скрипт, если он есть. И нужно предупреждать, что если у конторы ТС'а для локальной сети DNS-сервера отвечают только за локальный домен, то с этой опцией у него перестанут резолвится интернет DNS-имена. И вобще неизвестно насколько хорошо уживутся pppd-скрипты с NM и systemd в отношении resolv.conf.

адрес гейта вам покажет ifconfig в свойствах соединения pppXX

Перекладываете свою лень на ТС'а? В man'е pppd ведь ясно написано, что он сам умеет вызывать скрипт при установлении соединения и перечислены параметры скрипта ($1, $2 и т.д.), адрес шлюза среди них есть. Но вам лень прочитать man. Вам лень изучить скрипт /etc/ppp/ip-up вашего дистра, чтобы понять под каким именем должен быть ваш /usr/local/sbin/vpnroute.sh (вангую, что /etc/ppp/ip-up.d/officePPTP). Лень использовать в скрипте переменную $PPP_REMOTE или $5, чтобы маршрут был правильным не только сегодня, но и завтра, когда поменяют адрес шлюза ppp.

Этот совет:

нужно у ваших админов узнать нужные пулы сетей

опять мимо, ведь:

Главный сисадмин в отпуске)

mky ★★★★★
()