Задать вопрос
  • С чем может быть связана ошибка OVPN mikrotik?

    @res2001
    Влад Темников, Вам нужен не порт 23 (стандартный порт телнет), а порт указанный в конфиге ВПН клиента
  • Почему через VPN не видит часть адресов?

    @res2001
    wexvellencex, :-) т.е. все наоборот, ваш локальный NAS по отношению к ВПН клиенту совсем не локальный.
    Если другие (любые) узлы в сети 192.168.2.0 через ВПН доступны, значит с самим ВПН проблем нет.
    Проблемы есть:
    1. с таблицей маршрутизации на недоступных узалх (NAS, контрллер и т.п.) и/или
    2. с фаерволом на недоступных узлах
    Для проверки на любом недоступном узле отключите фаервол. И можете сюда приложить таблицу маршрутизации с недоступного узла.
    Проще всего взять какой-нибудь недоступный комп с виндой и экспериментировать на нем.
    Причина скорее всего на всех узлах одна и та же, так что определитесь на одном, по аналогии настроите и другие.
    На винде получить таблицу маршрутизации можно командой: route print -4
  • Почему через VPN не видит часть адресов?

    @res2001
    wexvellencex, Получается ВПН клиент и NAS находятся в одной сети. Именно это я и хотел узнать.
    Еще мог быть вариант, что NAS находится в сети за ВПН сервером, поэтому и возник вопрос. Вы же схему сети не описали.

    Значит не должно быть проблем с доступом к NAS не зависимо от того есть подключение ВПН или нет.
    Попробуйте пропинговать по IP адресу NAS с ВПН клиента с включенным ВПН и выключенным.
    Как вы обращаетесь к NAS? По IP или по имени?
  • Почему через VPN не видит часть адресов?

    @res2001
    который локально лежит например 192.168.2.20

    Что значит "локально" в данном случае? Локально к ВПН клиенту?
    Остальные не доступные ресурсы они то же такие же локальные?
    Хорошо бы кратко набросать схему сети с учетом ВПН подключения.
  • Windows как маршрутизатор?

    @res2001
    The_Immortal,
    Да, Вы правы - так сервер видно: это локальный адрес Устройства B (192.168.43.1).

    Странно. Ожидал увидеть адрес сервера в той же подсети, что и клиент. По крайней мере у меня так.
    Может на роутере можно что-то докрутить, чтоб себе выдавал адрес из ВПН сети.
    Возможно из-за этого происходит то, что вы увидели в wiresharkе и о чем писал ValdikSS
    Почему то винда маршрутизирует ответ на шлюз по умолчанию, а не на шлюз из таблицы маршрутизации.

    Может для задачи все-таки нужно что-то типа виртуального маршрутизатора или не обязательно все же?

    Не требуется. Это должно работать.
  • Почему появляются артефакты при установке windows 10?

    @res2001
    Попробовал устанавливать несколько сборок

    Сборки - зло. К тому же вы ставите ОСь для другого человека. Используйте только оригинальную версию с сайта микрософт.
    Хотя, конечно, если вы хотите, чтоб человек стал вашим постоянным клиентом, то почему бы и нет :-)
  • Как избавить от заданных размеров количества строк и столбцов при считывании из файла?

    @res2001
    Не ясно о чем речь. Вроде вопрос короткий и простой, а вы к нему прилагаете портянку кода.
    О каких строках и столбцах идет речь?
    Стандартный вариант - писать размеры хранящейся структуры в файл перед самой структурой. Тогда при чтении сначала читаете размеры, выделяете нужное количество памяти и затем читаете в выделенную память саму структуру.
  • Windows как маршрутизатор?

    @res2001
    The_Immortal,
    1. У VPN-сервера нет внутреннего адреса. Есть только внешний, он же и является WAN-адресом роутера.

    Это не так. Если вы его нигде не назначаете руками - это еще не говорит о том, что его нет.
    Кроме того сам по себе стек TCP/IP работает так, что ему требуется 2 адреса из одной подсети для обмена двух узлов. А ВПН сеть можно рассматривать как обычную сеть, там действуют абсолютно стандартные правила маршрутизации.
    Конкретно с SSTP у меня опыт не большой, сервер никогда не конфигурировал. Как там назначается адрес сервера не знаю. Знаю как это работает например в OpenVPN.
    Вот прям сейчас я работаю удаленно через клиента SSTP VPN в винде и в состоянии подключения на закладке Details могу увидеть адрес сервера и адрес клиента.

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

    представленного выше захвата icmp не было.

    Я уже лет 20 как разрешаю маршуртизацию в винде только добавлением в реестр параметра IPEnableRouter=1 с последующей перезагрузкой и всегда этого хватало. Причем это работает и с физическими адаптерами и с виртуальными и ВПН. Если у вас это не работало почему то, возможно это из-за каких-то ваших прошлых манипуляций.
  • Как создать свой модуль в С++?

    @res2001
    Пример отдает каким-то питоном :-)

    После включения 2D.h у вас на прямую доступны все функции, структуры, типы, описанные в этом заголовке, их можно сразу использовать, без каких-то танцев.
    Если помимо 2D.h есть еще и 2D.cpp, то его нужно включать в сборку вместе с main.cpp.

    Либо же 2D можно собрать отдельно как статическую или динамическую библиотеку и включать в сборку библиотеку через опцию -l компилятора. В случае использования библиотеки заголовочный файл то же необходим.
  • Windows как маршрутизатор?

    @res2001
    The_Immortal, Еще небольшой лайфхачек.
    Чтоб не добавлять статические маршруты в винде, их можно добавлять автоматически при подключении SSTP ВПН.
    Делается это в powershell:
    :: узнаем имя ВПН подключения
    Get-VpnConnection
    :: Добавляем маршруты для конкретного VPN соединения:
    Add-VpnConnectionRoute -ConnectionName <vpn name> -DestinationPrefix <networ adress/mask> -PassThru

    Маршрут указанный в Add-VpnConnectionRoute будет добавляться в таблицу маршрутизации всякий раз, когда подключаете ВПН. И удалятся из таблицы при отключении ВПН.
  • Windows как маршрутизатор?

    @res2001
    The_Immortal, еще немного добавлю:
    включил через реестр IpEnableRouter

    Set-NetIPInterface -Forwarding Enabled

    Это одно и то же. Только после правки реестра винду надо перезагрузить, а из поша перезагружать не требуется.
    Кстати, возможно, второй вариант работает только до перезагрузки. Тут я не в курсе, надо проверять, все время делаю это через реестр.
    включил службу "Маршрутизация и удаленный доступ":

    Это лишнее. Маршуртизация работает без каких-либо дополнительных служб - это стандартный функционал TCP/IP стека даже в домашней винде.
  • Windows как маршрутизатор?

    @res2001
    The_Immortal,
    Вот этот вопрос не очень понимаю... VPN A: 172.16.3.37 (по этому IP устройство B имеет доступ к устройству A).

    Для простоты можно рассматривать ВПН как еще один сетевой адаптер. Чтоб он нормально работал у него должен быть IP адрес. Т.к. такие ВПН адаптеры находятся на обоих узлах в сети ВПН, то и IP адреса должно быть как минимум 2 (если в ВПН сети только 2 устройства).
    У вас же везде фигурирует только 1 адрес 172.16.3.37.
    На винде посмотреть ВПН адрес можно с помощью ipconfig /all (ну или открыть окно status по ВПН подключению). Как посмотреть ВПН адрес на роутере не скажу, но там возможно адрес 172.16.3.1. Можете попинговать, например. Но лучше это где-выяснить в интерфейсе роутера или в ком.строке. В общем, на обоих узлах должен быть свой собственный ВПН адрес и эти адреса должны различаться.
    Т.к. вы на обоих узлах ВПН прописываете один и тот же адрес маршрутизатора в маршруте, то на одном из узлов этот адрес будет не верным и маршрутизация работать нормально не будет.
  • Windows как маршрутизатор?

    @res2001
    Дополнительные вопросы:
    1. сети за А и В имеют разные адреса подсетей? Какие?
    2. из описания не ясны ВПН адреса А и В.

    На Устройстве B прописал маршрут до сети Устройства А через VPN-интерфейс:

    То же самое надо сделать и на устройстве А для сети устройства В.
    Ну и для теста отключите фаервол на винде. Если заработает, включите и если будет что-то блокировать, то надо будет вручную добавить разрешающие правила.

    Пожалуйста, подскажите, в рамках использования клиентского Windows задача не выполнима?

    Задача вполне выполнима. Неоднократно использовал это в работе начиная с Windows 2000.
  • Что подразумевается под поиском двух линий при создании контейнера?

    @res2001
    По рисунку все понятно.
    В примере найдены 2 линии 2 и 9. Они образуют "двумерную" емкость в которую может поместиться 49 чего-то воды.
    49 = 7*7, где
    первая 7 - это расстояние между 9 и 2 линией по Х, т.е. 9-2=7
    вторая 7 - это длина наименьшей из двух выбранных линий (7 и 8), т.к. именно это значение ограничивает объем получаемой емкости.
  • Какие книги подойдут для изучения c++?

    @res2001
    По логике, пожалуй, стоит :-)
    Для изучения С++ подойдет любая более-менее современная толстая книжка по С++.
    Например Прата возьмите.
  • Почему неправильно считает Коэффициенты регрессии?

    @res2001
    Борис Стасев, Добавьте в код дополнительный отладочный вывод промежуточных результатов и смотрите на каком этапе выводимые данные начинают не сходится с вручную рассчитанным результатом.
    Для простоты можно сократить входной файл и т.п.
    Можно разбить задачу на части и отлаживать каждую часть, как отдельную задачу, добиваясь правильного результата для каждой отдельной части. И т.д и т.п.

    Отладочный вывод потом удалите, когда все отладите.

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

    Чтоб избавиться от вероятных ошибок связанных с использованием типа float, перейдите на тип double. У float очень низкая точность, всего 6-7 значащих десятичных цифр. Из-за этого при интенсивных расчетах с float могут быть не корректные результаты.
    Отладитесь с double, перейдете обратно на float (если float вам принципиален) и посмотрите, как изменится результат. С некоторыми ошибками точности можно попробовать побороться, но далеко не со всеми. Это специфика типов с плавающей точкой. У double то же есть свои ограничения по точности (15-17 значащих десятичных цифр), но они гораздо больше, чем у float и обычно точности double хватает.
  • Какой структурой можно повесить lock на диапазон?

    @res2001
    Как вариант - блокировать каждый пакет из диапазона
  • Как вывести изображение с прозрачным фоном WinApi c++?

    @res2001
    Точного ответа не знаю. Но могу предположить, что голая винда, возможно, умеет только в BMP. Поддержка разных форматов изображений - это не задача ОС. Так же как и звука/видео и т.п.
    Все остальное может быть использовано через дополнительные преобразования.
    Ищите подходящие библиотеки для работы с изображениями. Можно начать с libpng. Можно поискать что-то более универсальное с поддержкой разных форматов, если вам это может понадобится в дальнейшем.
  • Как конвертировать из DEC в HEX ASCII?

    @res2001
    Danilka2400,
    реально?

    strtol и atoi делают одно и то же.
    Только atoi старый вариант с лохматых времен и она ничего не знает про системы счисления - для нее входной параметр всегда в десятичной системе.
    strtol - умеет в системы счисления, и не только в стандартные, вплоть до 36. Видел один раз использование 36ричной системы счисления в жизни :) позволяет сильно ужимать числа по сравнению с десятичной в текстовом представлении.
  • Как конвертировать из DEC в HEX ASCII?

    @res2001
    Danilka2400,
    с делал вот так

    Блин. Дак у вас на входе десятичные цифры, записанные в строке. Вам достаточно было в первоначальном варианте сделать strtol(asciiHex, NULL, 0);
    Я думал, что на входе шестнадцатиричные, т.к. и вы использовали систему счисления 16 в strtol. Да и вопрос задан соответствующим образом.