Задать вопрос
  • Обход NAT вполне реален в нынешних реалях?

    ValdikSS
    @ValdikSS
    Для «пробива» NAT существуют распространённые и широко применяемые практики, задокументированные в RFC5128, а также менее распространённые, но технические еще более продвинутые, вроде pwnat.

    Слыхал об hole punching/STUN, но вроде для них нужен промежуточный сервер, но тогда смысл от децентрализации.

    Промежуточный сервер в Hole Punching нужен только для согласования IP-адресов и портов. Если же IP-адрес и порт заранее известны (например, вы настраиваете UDP VPN между двумя пирами), то промежуточный сервер не нужен: просто отправляйте пакеты по UDP со статичными портами на обеих сторонах друг к другу.

    Промежуточным сервером также может быть другой пир, а не обязательно централизованный сервер. В расширении ut_holepunch протокола BitTorrent DHT один пир может отослать другому пиру сообщение о необходимости подключения друг к другу путём отправки сообщения в DHT.
    Ответ написан
    8 комментариев
  • С чем связано уменьшение количества RSS-каналов новостей?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Имхо плохо монетаризируются, поэтому и не заморачиваются с ними.
    Ответ написан
    1 комментарий
  • Можно ли поднять DHCP на Windows 10?

    @mumische
    Единственный вариант с Windows 10 и DHCP без использования дополнительного ПО - это, как уже сказали, включение Internet Connection Sharing. Но назвать это полноценным сервером тяжело.

    Вообще говоря, специально для сетей без DHCP-сервера была разработана APIPA: https://docs.microsoft.com/en-us/windows-server/tr...
    Ответ написан
    Комментировать
  • Как в батнике создавать в папке подпапку и перекидывать туда каждые 10 созданных файлов?

    @MaxKozlov
    После конвертации можно поперекидывать примерно на основе такого монстрика

    @echo off
    
    set idx=1
    set subfolder=1
    for %%f in (*. mp4) do (
      call :inc "%%f"
    )
    goto :EOF
    
    :inc
    echo %1 - %idx% - %subfolder%
    set /a "idx+=1"
    if .%idx% == .11 (
      set /a "subfolder+=1"
      set idx=1
    )


    где вместо echo %1 - %idx% - %subfolder% будет команда создания и переноса файликов в подпапочки
    Указанный код.цикла надо поместить внутрь вашего цикла и запускать после каждого обработанного файла на папке с результатами. Ну и, конечно, передвавать в подпрограмму пути к папке для перемещения

    Доводить до ума не очень хочется, по причине, озвученной в комментарии
    А переписать эти ваши 10 строк на ps займет минимум времени
    Ответ написан
    4 комментария
  • Почему используется потенциально неинициализированная локальная переменная-указатель "matrix"?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если у вас d не равно 1 тогда возникает flow который приводит к matrix которая не аллоцирована.

    Кстати вы используете не матрицу а так называемый Jagged Array (зубастый массив). В этом нет смысла т.к. у вас матрица всегда прямоугольная и рациональнее выделить один большой массив и распределять его ячейки как элементы прямоугольной матрицы (i,j) формула смещения - очень простая. Ширину умножить на один индекс плюс второй.

    Я-бы делал так

    float* matrix = new float[n * m]
    ну и формулы доступа дальше подправить надо соотвественоо.
    Ответ написан
    Комментировать
  • Мало памяти на компьютере. Что делать?

    Adamos
    @Adamos
    На эти нетбуки нормально встает Линукс. На некоторые даже предустанавливался.
    И место не сжирает, что характерно, и те же задачи серфинга и киношек нормально решает (а ничего более серьезного на этом барахле все равно не поделаешь).
    Один раз поставил - и забыл всю эту головную боль с пропадающим местом и его постоянной чисткой.
    Ответ написан
  • Как пройти ошибку в bat файле при присвоении имени файлам?

    @MaxKozlov
    Вы не сформулировали что именно вы хотите видеть в качестве выходного имени

    Если только part-001, part-002 и т.д., то, как и писал res2001, используйте "part-%%03d.mp4"
    Если часть исходного имени с добавкой части в конце, то можно типа "%%~ni-%%03d.mp4"

    А вообще, при отладке убирайте @echo off - будете видеть запускаемую команду со всеми подстановками
    Ответ написан
    Комментировать
  • Безопасен ли VPN?

    paran0id
    @paran0id
    Умный, но ленивый
    Мне не нравится эта инструкция. В ней предлагается сомнительный хостинг, и, что хуже, волшебный инсталлятор, который делает всё сам.

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

    Если хотите безопасности, не используйте того, чего не понимаете полностью. Или делегируйте задачу специалисту, которому доверяете.

    UPD:
    Ок ладно, я заглянул в этот инсталлятор, вроде ничего катастрофического, он там wireguard ставит.
    Во всяком случае, та версия, которая в данный момент там лежит в main.
    Содержимое файла в ветке main по ссылке в любой момент может измениться. Было бы надёжнее, если бы они ссылались на хэш коммита, а не на main.
    И это не отменяет того факта, что НИЗЗЗЯ качать непонятные файлы из интернета и тут же исполнять их от имени рута.
    Ответ написан
    Комментировать
  • Копирование файлов с сервера на сервер происходит через компьютер клиента?

    @nApoBo3
    Да вы правильно понимаете если проводник открыт на клиенте, то он копирует через клиента.
    Ответ написан
    Комментировать
  • Массив указателей на функции. Почему программа не даёт результат?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Мне нужно выполнить функцию, из массива указателей на функцию, номер которой я укажу в консоли. Почему не выполняется?

    Потому что mass[0]; -- это не вызов функции, а просто указатель. Вызов функции выглядит так: mass[0]();
    Ответ написан
    Комментировать
  • Возможно ли игнорировать файл/папку через .gitignore, которые уже есть в репозитории?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Нет, если файл уже попал в репозиторий, то он будет отслеживаться до тех пор, пока ты его оттуда не удалишь.

    Игнор действует только на те файлы, которые ещё не отслеживаются. Помогает СЛУЧАЙНО не добавить файл. Но лаже игнор не запрещает принудительно загнать файл в репозиторий.

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

    Ещё есть трюк с временным игнорированием изменений в файле, ранее уже добавленном. Но он будет работать только в локальной копии репозитория и только после ввода команды
    git update-index --assume-unchanged файл
    Ответ написан
    Комментировать
  • Где взять офлайн установочник для gcc в убунте?

    Adamos
    @Adamos
    Установщиков под линуксами обычно не бывает, все ставится пакетами из репозитория.
    Но нюанс в том, что один пакет компилятора ни черта не даст, нужно выкачивать к нему все зависимости.
    Это в убунте может сделать, например, apt-rdepends.
    Ответ написан
    Комментировать
  • Как переписать код с с++ на с(си)?

    CityCat4
    @CityCat4 Куратор тега C
    //COPY01 EXEC PGM=IEBGENER
    Обычно я такими вещами не занимаюсь... но... жалко девочку, пример скачала, но он на плюсах, а злой препод требует plain C (а еще может потребовать обьяснить, как оно работает! :DDD)
    (JFYI, Инна - я бы только за форматирование пару поставил - читать это невозможно от слова совсем)

    #include <iostream>
    меняем на
    #include <stdio.h>
    using namespace std;
    нафиг.

    Цикл вывода, где потоковый оператор cout, переписать следующим образом:
    for ( j = 0 ; j < W ; j++)
      printf("%d ", matrix[i][j]);  
    putchar('\n');


    И настоятельно рекомендую, прежде чем идти лабу сдавать - почитать или посмотреть в отладчике, как это работает. Потому что чайник срезается одним вопросом.
    Ответ написан
    3 комментария
  • Ne sovsem ponyatno kak ispravit, kto podskajet?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Ne sovsem ponyatno kak ispravit

    смотреть не туда, куда ты смотришь сейчас (не на определение COMPILE_TIME_ASSERT, с ним всё ок, оно такое, чтобы генерировать ошибку компиляции, когда какое-то условие в коде не выполняется), а в строку
    ../deps/source-sdk-2013/mp/src/public/tier0/threadtools.h:1130

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

    gbg
    @gbg Куратор тега Компьютерные сети
    Любые ответы на любые вопросы
    Проблема в том, что скорость, которую декларирует провайдер - это скорость последней мили, от провайдера к вам. А как там сложатся дела в интернете - провайдер гарантировать не может.

    Стим использует ряд трюков для ускорения закачки (тот же LEDBAT и многопоточное скачивание), у него мощные датацентры и CDN - отсюда и возможность выжать из вашей последней мили всю скорость.
    Ответ написан
    4 комментария
  • Суть макросов в с++?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Макроссы часто используют для условного включения каких-то функций на этапе компиляции. Например, отладочного логирования. Тогда в зависимости от ключей компиляции можно получить релизный исполняемый файл вообще без этого ненужного кода.

    Еще макросы можно использовать для гарантирования инлайнинга кода. Если есть что-то часто повторяющееся, например, это же самое логирование, то можно сделать макросы и избегать дополнительных накладных расходов на вызовы функций.
    Ответ написан
    3 комментария
  • Как запретить пользоваталям в сети использовать VPN? как блокировать соединения?

    @nApoBo3
    Совсем DPI.
    Усложнить, заблокировать все исходящие соединения кроме HTTP/HTTPS/MAIL.
    Еще усложнить HTTP и HTTPS пускать через прокси.
    Дополнительно групповыми политиками запретить запуск VPN клиентов.

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

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    В сертификате "Калуга астрал" видимо указан OCSP - сервис для онлайн-проверки статуса сертификатов. Пока данный сервис не будет онлайн/доступен, этим сертификатом ничего нельзя будет подписать, потому что он не может проверить статус отзыва.
    Загрузка CRL на компьютер ничего не решает - должен работать именно онлайн проверятор.
    Ответ написан
    Комментировать
  • Как пробросить все порты роутера?

    HemulGM
    @HemulGM
    Delphi Developer, сис. админ
    DMZ или режим моста, если такой имеется.
    Ответ написан
    1 комментарий
  • Почему провайдеры не могут заблокировать VPN?

    CityCat4
    @CityCat4 Куратор тега VPN
    //COPY01 EXEC PGM=IEBGENER
    Почему не могут-то? Могут. Просто такой команды пока не было. Погуглите, как с этим в Китае, например (с работой VPN). Или Вы думаете, тот факт, что Shadowsocks - китайская разработка - случайность? :)
    Ну и кроме того, не всякий VPN - это обход блокировок. В энтерпрайзе - это обычная технология обьединения филиалов с головным офисом и предоставления удаленного доступа сотрудникам.

    Предложил изменение вопроса - убрал тег "Шифрование"
    Ответ написан
    Комментировать