• Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, нет. Но у него другой внешний IP, поэтому клиент к нему не обращается. Новый сервер находится в другой сети.
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, а что, нужно на каждом компе сети прописывать маршрут? Но в старой конфигурации такого не было. Были указаны шлюзы по умолчанию и всё.
    192.168.0.127 - это комп в сети сервера. Я его и пинговал с клиента. Результат выше.
    Пинг изнутри сети клиента компьютера внутри сети сервера:
    spoiler

    20:26:11.696101 IP 192.168.1.105 > 192.168.0.127: ICMP echo request, id 1, seq 19, length 40
    20:26:16.688104 IP 192.168.1.105 > 192.168.0.127: ICMP echo request, id 1, seq 20, length40
    20:26:21.695406 IP 192.168.1.105 > 192.168.0.127: ICMP echo request, id 1, seq 21, length 40
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, дополнил ответ про UDP.

    tcpdump, пинг с сервера адреса за клиентом:
    spoiler
    20:05:00.953404 IP 10.8.0.1 > 192.168.1.105: ICMP echo request, id 2663, seq 4, length 64
    20:05:00.953835 IP 192.168.1.105 > 10.8.0.1: ICMP echo reply, id 2663, seq 4, length 64
    20:05:01.955323 IP 10.8.0.1 > 192.168.1.105: ICMP echo request, id 2663, seq 5, length 64
    20:05:01.955783 IP 192.168.1.105 > 10.8.0.1: ICMP echo reply, id 2663, seq 5, length 64
    20:05:02.957156 IP 10.8.0.1 > 192.168.1.105: ICMP echo request, id 2663, seq 6, length 64
    20:05:02.957612 IP 192.168.1.105 > 10.8.0.1: ICMP echo reply, id 2663, seq 6, length 64
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001,
    Пингую, с клиента адрес в сети сервера. UDP потому что я проглядел, и сделал трассировку вместо пинга. Вот пинг:
    spoiler
    20:09:47.769642 IP 10.8.0.8 > 192.168.0.127: ICMP echo request, id 26874, seq 9, length 64
    20:09:48.777724 IP 10.8.0.8 > 192.168.0.127: ICMP echo request, id 26874, seq 10, length 64
    20:09:53.817863 IP 10.8.0.8 > 192.168.0.127: ICMP echo request, id 26874, seq 15, length 64
    20:10:01.882252 IP 10.8.0.8 > 192.168.0.127: ICMP echo request, id 26874, seq 23, length 64
    20:10:02.890207 IP 10.8.0.8 > 192.168.0.127: ICMP echo request, id 26874, seq 24, length 64
    20:10:03.898252 IP 10.8.0.8 > 192.168.0.127: ICMP echo request, id 26874, seq 25, length 64

    Правила добавил
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, шлюз по умолчанию у всех точно нужный, этот параметр остался без изменений.

    Вот что показал tcpdump:
    spoiler
    19:53:56.559212 IP 10.8.0.8.53020 > 192.168.0.127.33504: UDP, length 32
    19:53:56.559256 IP 10.8.0.8.51725 > 192.168.0.127.33505: UDP, length 32
    19:53:56.559300 IP 10.8.0.8.57276 > 192.168.0.127.33506: UDP, length 32
    19:53:56.559343 IP 10.8.0.8.46134 > 192.168.0.127.33507: UDP, length 32
    19:53:56.559391 IP 10.8.0.8.41974 > 192.168.0.127.33508: UDP, length 32
    19:53:56.559434 IP 10.8.0.8.55115 > 192.168.0.127.33509: UDP, length 32
    19:53:56.559481 IP 10.8.0.8.48952 > 192.168.0.127.33510: UDP, length 32
    19:53:56.559524 IP 10.8.0.8.47927 > 192.168.0.127.33511: UDP, length 32
    19:53:56.559567 IP 10.8.0.8.35681 > 192.168.0.127.33512: UDP, length 32
    19:53:56.559612 IP 10.8.0.8.34133 > 192.168.0.127.33513: UDP, length 32


    При этом изнутри сети, с сервера, данный адрес пингуется свободно.
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001,

    UPD. Пакеты из сети сервера в сеть клиента идут, всё в порядке. Осталось понять почему не идут пакеты от клиента в сеть сервера.
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, так открыто всё на tun0, настройки iptables тоже приложил выше. Ошибок судя по всему в логах нет, но на всяки случай скину тоже их.
    лог сервера:
    spoiler
    Wed Sep 11 18:43:54 2019 Initialization Sequence Completed
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 TLS: Initial packet from [AF_INET]94.180.zzz.zzz:33663, sid=cc6a93d7 f34b17f2
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 VERIFY OK: depth=1, C=RU, ST=PNZ, L=Penza, O=MLS IT Systems, OU=IT dept, CN=key.mlsit.ru, name=EasyRSA, emailAddress=sysadmin@mlsit.ru
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 VERIFY OK: depth=0, C=RU, ST=PNZ, L=Penza, O=MLS IT Systems, OU=IT dept, CN=kazan, name=EasyRSA, emailAddress=sysadmin@mlsit.ru
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 peer info: IV_VER=2.3.4
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 peer info: IV_PLAT=linux
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 Outgoing Data Channel: Cipher 'AES-128-CBC' initialized with 128 bit key
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 Outgoing Data Channel: Using 512 bit message hash 'SHA512' for HMAC authentication
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 Incoming Data Channel: Cipher 'AES-128-CBC' initialized with 128 bit key
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 Incoming Data Channel: Using 512 bit message hash 'SHA512' for HMAC authentication
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 Control Channel: TLSv1.2, cipher TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 2048 bit RSA
    Wed Sep 11 18:44:03 2019 94.180.zzz.zzz:33663 [kazan] Peer Connection Initiated with [AF_INET]94.180.zzz.zzz:33663
    Wed Sep 11 18:44:03 2019 kazan/94.180.zzz.zzz:33663 OPTIONS IMPORT: reading client specific options from: /etc/openvpn/xxx//kazan
    Wed Sep 11 18:44:03 2019 kazan/94.180.zzz.zzz:33663 MULTI_sva: pool returned IPv4=10.8.0.10, IPv6=(Not enabled)
    Wed Sep 11 18:44:03 2019 kazan/94.180.zzz.zzz:33663 MULTI: Learn: 10.8.0.10 -> kazan/94.180.zzz.zzz:33663
    Wed Sep 11 18:44:03 2019 kazan/94.180.zzz.zzz:33663 MULTI: primary virtual IP for kazan/94.180.zzz.zzz:33663: 10.8.0.10
    Wed Sep 11 18:44:03 2019 kazan/94.180.249.180:33663 MULTI: internal route 192.168.1.0/24 -> kazan/94.180.zzz.zzz:33663
    Wed Sep 11 18:44:03 2019 kazan/94.180.zzz.zzz:33663 MULTI: Learn: 192.168.1.0/24 -> kazan/94.180.zzz.zzz:33663
    Wed Sep 11 18:44:05 2019 kazan/94.180.zzz.zzz:33663 PUSH: Received control message: 'PUSH_REQUEST'
    Wed Sep 11 18:44:05 2019 kazan/94.180.zzz.zzz:33663 SENT CONTROL [kazan]: 'PUSH_REPLY,route 192.168.0.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 30,ifconfig 10.8.0.10 10.8.0.9' (status=1)
    Wed Sep 11 18:44:22 2019 MULTI: Learn: 192.168.1.0 -> kazan/94.180.zzz.zzz:33663
    Wed Sep 11 18:49:55 2019 MULTI: Learn: 192.168.1.0 -> kazan/94.180.zzz.zzz:33663
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, причесал настройки OpenVPN. Маршруты есть, судя по выхлопу ip route
    Сервер:
    spoiler
    ip route
    default via 94.181.xxx.xxx dev eth2 onlink
    10.8.0.0/24 via 10.8.0.2 dev tun0
    10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1
    94.181.xxx.x/24 dev eth2 proto kernel scope link src 94.181.xxx.xx
    192.168.0.0/24 dev eth1 proto kernel scope link src 192.168.0.1
    192.168.1.0/24 via 10.8.0.2 dev tun0

    клиент:
    spoiler
    default via 94.180.zzz.zzz dev eth0
    10.8.0.1 via 10.8.0.9 dev tun0
    10.8.0.9 dev tun0 proto kernel scope link src 10.8.0.10
    94.0.0.0/8 via 94.180.zzz.zzz dev eth0
    94.180.zzz.z/24 dev eth0 proto kernel scope link src 94.180.zzz.zzz
    94.180.250.0/24 dev eth2 proto kernel scope link src 94.180.250.147
    192.168.0.0/24 via 10.8.0.9 dev tun0
    192.168.1.0/24 dev eth1 proto kernel scope link src 192.168.1.1

    iptables на сервере:
    spoiler
    -A FORWARD -i tun0 -j ACCEPT
    -A FORWARD -o tun0 -j ACCEPT
    -A FORWARD -s 10.8.0.0/24 -d 192.168.1.0/24 -j ACCEPT
    -A FORWARD -s 192.168.1.0/24 -d 10.8.0.0/24 -j ACCEPT
    -A FORWARD -s 10.8.0.0/24 -d 192.168.0.0/24 -j ACCEPT
    -A FORWARD -s 192.168.0.0/24 -d 10.8.0.0/24 -j ACCEPT
    -A FORWARD -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT
    -A FORWARD -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT

    И всё равно не работает - с клиента пингуется только сервер, сеть за сервером не пингуется. С сервера не пингуется даже клиент.
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    Да это я уже экспериментировал с настройками. Изначально так и было - на сервере route 192.168.1.0 255.255.255.0, в ccd указано iroute 192.168.1.0 255.255.255.0.
    Изначально конфиг переносился с уже работающего сервера, на клиенте только заменили ip адрес по которому он обращается к серверу, и всё. Но всё равно не работало. Точнее, работало, но только в одну сторону - со стороны сети сервера сеть клиента пинговалась, со стороны клиента пинговался только сервер. Все настройки iptables тоже были перенесены со старого шлюза, с заменой адресов на пробросах. Вот разве что у нового и старого сервера не совпадают сетевые интерфейсы. Сегодня вечером попробую переподключить их так же как на старом
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, да, шлюз, он же сервер OpenVPN. Клиент OpenVPN остаётся на старом месте, там ничего не меняется. Внутри сети IP адрес тот же, да (192.168.0.1). Поменялся собственно только сетевой интерфейс локальной сети (и в настройках был изменён), и внешний IP-адрес. Хотя возможно было правильнее подключить сети к тем же интерфейсам что и на старом...
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, да, клиент видит и пингует сервер (192.168.0.1), но дальше не видит. А сервер не пингует клиента. Логи щас уже приложить не могу, днём приходится переключать всё на старый шлюз, чтобы хоть как-то работало.
    С маршрутизацией и прошу подсказать - вроде маршруты такие же как на старом шлюзе, но не работает.
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    res2001, настройки файрвола тоже перенесены со старого шлюза, соответственно с заменой адресов и интерфейсов. Других промежуточных шлюзов нет.
    Сервер:
    spoiler

    -A FORWARD -i tun0 -j ACCEPT
    -A FORWARD -o tun0 -j ACCEPT
    -A FORWARD -s 10.8.0.0/24 -d 192.168.1.0/24 -j ACCEPT
    -A FORWARD -s 192.168.1.0/24 -d 10.8.0.0/24 -j ACCEPT
    -A FORWARD -s 10.8.0.0/24 -d 192.168.0.0/24 -j ACCEPT
    -A FORWARD -s 192.168.0.0/24 -d 10.8.0.0/24 -j ACCEPT
    -A FORWARD -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT
    -A FORWARD -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT

    Клиент:
    spoiler

    -A FORWARD -s 10.8.0.0/24 -d 192.168.0.0/24 -j ACCEPT
    -A FORWARD -s 192.168.0.0/24 -d 10.8.0.0/24 -j ACCEPT
    -A FORWARD -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT
    -A FORWARD -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT
  • Не могу понять, почему не работает туннель?

    @MaxxDamage Автор вопроса
    Сервер:
    spoiler

    local 94.181.xx.xx
    port 649xx
    proto udp
    dev tun
    ca ca.crt
    cert server.crt
    key server.key
    dh dh2048.pem
    server 10.8.0.0 255.255.255.0
    ifconfig-pool-persist ipp.txt
    push "route 192.168.1.0 255.255.255.0 10.8.0.2"
    client-config-dir xxx
    route 192.168.1.0 255.255.255.0 10.8.0.1
    tls-auth ta.key 0

    auth SHA512

    tls-version-min 1.2
    cipher AES-128-CBC
    comp-lzo
    user nobody
    group nogroup
    persist-key
    persist-tun
    status openvpn-status.log
    verb 3

    log /var/log/openvpn.log

    Клиент
    spoiler


    client
    dev tun

    proto udp

    remote 94.181.xx.xx 649xx

    route 192.168.0.0 255.255.255.0

    resolv-retry infinite

    nobind

    user nobody
    group nogroup

    persist-key
    persist-tun

    ca ca.crt
    cert kaxxx.crt
    key kaxxx.key

    ns-cert-type server

    tls-auth ta.key 1

    auth SHA512

    cipher AES-128-CBC

    comp-lzo

    verb 3

    log /var/log/openvpn.log


    Ответ ip ro li
    сервера:
    spoiler

    default via 94.181.xxx.xxx dev eth0 onlink
    10.8.0.0/24 via 10.8.0.2 dev tun0
    10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1
    94.0.0.0/8 via 94.181.180.254 dev eth0
    94.181.xxx.0/24 dev eth0 proto kernel scope link src 94.181.xxx.xx
    94.181.xxx.0/24 dev eth1 proto kernel scope link src 94.181.xxx.xxx
    192.168.0.0/24 dev eth2 proto kernel scope link src 192.168.0.1
    192.168.1.0/24 via 10.8.0.2 dev tun0

    клиента:
    spoiler

    default via 94.180.zzz.zzz dev eth0
    10.8.0.1 via 10.8.0.9 dev tun0
    10.8.0.9 dev tun0 proto kernel scope link src 10.8.0.10
    94.0.0.0/8 via 94.180.249.254 dev eth0
    94.180.zzz.0/24 dev eth0 proto kernel scope link src 94.180.zzz.zzz
    94.180.zzz.0/24 dev eth2 proto kernel scope link src 94.180.zzz.zzz
    192.168.0.0/24 via 10.8.0.9 dev tun0
    192.168.1.0/24 dev eth1 proto kernel scope link src 192.168.1.1

    Собственно все настройки перенесены с другого сервера, к котором раньше подключался клиент. Но понадобилось перенести всё это на другую машину, с другими наружными IP-адресами. При переключении на старый шлюз всё работает. На новом, с аналогичными настройками (само собой заменены сетевые интерфейсы и IP-адреса в настройках) - не работает. Вывод ip ro li у старого шлюза тоже не отличается.
  • Как заставить туннель использовать определённый интерфейс?

    @MaxxDamage Автор вопроса
    ky0, Нет, недоступен по адресу на eth1. Если маршрут убрать, снова становится доступен. Думаю дело в том, что я в маршруте прописываю адрес сервера, с которого потом и обращаюсь. Но что делать в этой ситуации, не соображу никак.
  • Как заставить туннель использовать определённый интерфейс?

    @MaxxDamage Автор вопроса
    ky0,
    На шлюзе со стороны клиента прописываю маршрут вида
    route add 1.2.3.4/32 dev eth2
    То он со стороны этого адреса (1.2.3.4/32) он (клиент) становится недоступен. Даже SSH не подключается, по туннелю доступ SSH остаётся.
    Какого вида диагностика должна быть?
  • Как заставить туннель использовать определённый интерфейс?

    @MaxxDamage Автор вопроса
    ky0, извините что снова беспокою. Но проблему решить так и не получилось. Если на клиенте прописать вышеуказанный маршрут, то со стороны сервера его веб-сервисы становятся недоступны (те, доступ к которым идёт по IP)
  • Как заставить туннель использовать определённый интерфейс?

    @MaxxDamage Автор вопроса
    ky0, мда, эксперименты на расстоянии чреваты. Вообще пропал коннект к тому шлюзу (я к нему удалённо подключаюсь). Ладно, общий смысл я понял, буду экспериментировать дальше. Спасибо.

    UPD: Коннект восстановился, часть траффика пошла по второму интерфейсу, вроде всё в порядке. Спасибо

    UPD2: При такой настройке не могу подключиться к шлюзу по внешнему IP. Только по туннелю. Соответственно все веб-сервисы также недоступны по внешнему IP от меня. Я примерно понял в чём дело, но это уже частности.
  • Как заставить туннель использовать определённый интерфейс?

    @MaxxDamage Автор вопроса
    ky0,
    В таком виде?
    route add -net 10.8.0.9 netmask 255.255.255.255 gw ZZ.ZZ.ZZ.ZZ где "gw ZZ.ZZ.ZZ.ZZ" - ip адрес vpn сервера? Не работает так, выдаёт "SIOCADDRT: Сеть недоступна"
  • Как заставить туннель использовать определённый интерфейс?

    @MaxxDamage Автор вопроса
    ky0, указал маршрут вида
    10.8.0.9 94x180x***x***. 255.255.255.255 UGH 0 0 0 eth2
    Где 10.8.0.9 - gateway туннеля, 94x180x***x*** - gateway второго интернет-канала. Но судя по jnettop соединение всё равно идёт через дефолтный канал.