Я настроил подключение к удалённой сети VPN с KVpnc. Вроде бы, оно работает. Когда подключаю, появляется сетевой интерфейс ppp0.
hinst@hinst-desktop:~/Development> uname -a
Linux hinst-desktop 3.7.10-1.1-desktop #1 SMP PREEMPT Thu Feb 28 15:06:29 UTC 2013 (82d3f21) x86_64 x86_64 x86_64 GNU/LinuxТам находится некоторая сеть. Мне нужно, чтобы на сетевом интерфейсе работал клиент DHCP (я понятия не имею, работает ли он сейчас при подключении интерфейса). Я пытался найти какой-то конфигурационный файл, отвечающий за поведение клиента DHCP, /etc/dhclient.conf или как его, но ничего я сделать не смог, т.к у меня возник когнитивный диссонанс, к тому же, все описания что я находил, похоже, рассчитаны на то, что сетевой интерфейс подключается сразу при загрузке системы, а у меня он подключается в любой другой момент, т.е не при загрузке системы, а уже во время работы. Так вот, нужно, чтобы в той второй сети по DHCP узнался бы адрес шлюза по умолчанию, адрес сервера DNS, маска подсети, и что там ещё должно узнаваться, я не уверен. Хотелось бы так же самому взглянуть на эти данные. Как это сделать, как его включить, как проверить что он включен, я не знаю, процесс dhclient в диспетчере задач висит, но данные и работа на интерфейсе ppp0 - я не понел короче...
Но вообще это всё нужно не само по себе, а чтобы комп работал во второй сети. Во-первых, я надеюсь что там адрес сети не 192.168.1.0/24, т.е с моей домашней сетью это всё пересекаться не будет, т.е можно и нужно будет как-то настроить, чтобы все запросы на ту сеть шли через интерфейс ppp0... а не eth0. Но так как я до сих пор толком не проссал, какой у этой удалённой сети диапазон адресов, я, естественно, не далеко продвинулся и здесь... Добавить маршрут вроде не так сложно, там какая-то команда есть, ip route add, но вот какой интерфейс - понятно, а вот какой диапазон адресов - не понятно, т.к DHCP (описал выше).
И кроме направления всех пакетов для удалённой сети в удалённую сеть нужно также, чтобы DSN-запросы по поводу имён, кончающихся на .myvpn.nnov.ru, направлялись бы на DNS-сервер удалённой сети, который также нужно узнать по DHCP (описал выше). И чтобы оттуда приходили ответы, ок да, а то если что-то куда-то посылаешь, то может не прийти, т.к в ip-сетях наличие прямого маршрута ещё не гарантирует что тебе всё придёт обратно, ну тут как уж настроишь, в принципе, это мне кажется маловероятной проблемой в моей ситуации.
Что выводит ip route show
hinst@hinst-desktop:~/Development> ip route show
default via 192.168.1.1 dev eth0
127.0.0.0/8 dev lo scope link
169.254.0.0/16 dev eth0 scope link
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.2 Что выводит ip route show, когда VPN-подключение подключено:
hinst@hinst-desktop:~/Development> ip route show
default via 192.168.1.1 dev eth0 proto static
91.228.161.10 via 192.168.1.1 dev eth0 src 192.168.1.2
127.0.0.0/8 dev lo scope link
169.254.0.0/16 dev eth0 scope link
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.2
192.168.20.0/24 via 192.168.20.254 dev ppp0
192.168.20.254 dev ppp0 proto kernel scope link src 192.168.20.26
Строки, последние две:
Первая, 192.168.20.0/24 via 192.168.20.254 dev ppp0 - это маршрут который я прописал в KVpnc, а если я его там не прописываю, то он не появляется. Наверное.
Вторая появляется сама по себе. Собственно, глядя на неё я решил, что 192.168.20.254 - это, вероятно, адрес шлюза по умолчанию удалённой сети. Но кто же его знает. К тому же, даже если предположить, что так и есть, и это и есть шлюз по умолчанию и DNS-сервер удалённой сети, проблема с DNS остаётся, имена в домене myvpn.nnov.ru не разрешаются, а должны. Короче я не знаю...
Что выводится когда пингуешь этот самый 192.168.20.254: (смотри предыдущий спойлер)
hinst@hinst-desktop:~> ping -i 5 192.168.20.254
PING 192.168.20.254 (192.168.20.254) 56(84) bytes of data.
64 bytes from 192.168.20.254: icmp_seq=1 ttl=64 time=38.9 ms
64 bytes from 192.168.20.254: icmp_seq=2 ttl=64 time=38.6 ms
64 bytes from 192.168.20.254: icmp_seq=3 ttl=64 time=38.1 ms
... ... ...
То есть, он отвечает...
Показать
А вот так не отвечает
hinst@hinst-desktop:~/Development> ping myveryimportantaddress.myvpn.nnov.ru
ping: myveryimportantaddress.myvpn.nnov.ru
И так не отвечает.
hinst@hinst-desktop:~/Development> ping -I ppp0 myveryimportantaddress.myvpn.nnov.ru
ping: myveryimportantaddress.myvpn.nnov.ru
То есть... не работает. что и не удивительно. т.к ничё не толком настроено. хорошо ещё что ничё не сломал пока "настраивал"
Желательно как-нибудь придумать, чтобы это всё настроить динамически в виде скрипта, чтобы когда интерфейс не подключён, этих настроек в системе бы не было. Ну ещё желательно, чтобы WINS - адреса разрешались, но это уже не так важно, главное чтобы хотя бы основное работало.
Читал что можно (или нужно) настроить сервер DNS на компе, named, потом там ещё было название dnsmasq, про это я вообще помню только название, а что с ним делать не помню, в общем, named я не настроил, и, к тому же, я не понял, как мне потом убедиться в том, что DNS-запросы с моего компа будут направляться на named-сервер, запущенный на моём же компе, когда сейчас эти запросы направляются на мой домашний роутер, адрес которого комп получает по DHCP, т.что если я этот named-server настрою, то надо будет как-то прописать, чтобы DNS-запросы шли на localhost, а вот как и куда это прописывать, мне не понятно, как и многое другое мне не понятно, главное, читаешь-читаешь что пишут в интернете, и всё равно ничё не понятно, ну кроме того, что надо настраивать эти сервера с текстовыми конфигурационными файлами, причём надо сначала установить пакеты с этими серверами и найти эти конфигурационные файлы. В общем "примерно" всё понятно, но на деле - нифига подобного.
OpenSuSE 12.3 (64bit) & KDE
Надеюсь понятно описал. Помогите. Благодарю за внимание.