• Как узнать внешний белый ip без доступа к маршрутизатору?

    @romancelover
    программист C++ под Linux
    Ешё вариант
    ping -4 -R ya.ru
    PING (87.250.250.242) 56(124) bytes of data.
    64 bytes from ya.ru (87.250.250.242): icmp_seq=1 ttl=57 time=186 ms
    RR: 192.168.1.XX (192.168.1.XX)
    ppp91-77-XXX-XXX.pppoe.mtu-net.ru (91.77.XXX.XXX) <- тут внешний IP
    ppp91-77-XX-1.pppoe.mtu-net.ru (91.77.XX.1)
    mpts-a197-51.msk.mts-internet.net (212.188.1.106)
    a197-cr04-be23.msk.mts-internet.net (212.188.33.198)
    marionetka.yndx.net (87.250.234.255)
    sas-32z3-lo0.yndx.net (87.250.226.157)
    213.180.192.126 (213.180.192.126)
    ya.ru (87.250.250.242)

    Под Windows можно попробовать ping -r 9.
    Ответ написан
    Комментировать
  • Как настроить routable /56 ipv6 на разные интерфейсы?

    @romancelover
    программист C++ под Linux
    ndppd можно использовать.
    в /etc/ndppd.conf
    proxy enp18 {
    rule 2a0f:9500:fa0:102::/64
    {
    iface wg_ip6
    }
    }

    варианты типа префикса: static - отвечать на все neighbor solicitation (не рекомендуется для больших префиксов, чтобы не забивалась таблица соседей несуществующими адресами),
    iface - перенаправлять на интерфейс, auto - тоже перенаправлять на интерфейс, но определять его автоматически.
    У меня конфигурация похожая, стоит ndppd и Wireguard, но там за Wireguard нет своей подсети со SLAAC, и префикс мелкий (/112), в опции стоит просто static.
    Так как wireguard это p2p интерфейс, то (как я себе это представляю), на той стороне wireguard'a ndppd должен аналогично перебрасывать nd запросы с wireguard уже в сеть на той стороне. Само собой там должен быть запущен radvd, анонсирующий указанный префикс в сеть.
    Ответ написан
    2 комментария
  • Доступ к https из Windows XP?

    @romancelover
    программист C++ под Linux
    А если попробовать поставить cygwin (самая последняя версия уже не поддерживает windows xp, но в сети можно найти версию, которая ещё поддерживает), там в окружении будет свой openssl, и поставить туда какой-нибудь более-менее нормальный браузер? хотя ни firefox, ни chromium я в списке пакетов не нашёл, может быть, qupzilla какая-нибудь пойдёт. Она на qt, а Qt под Cygwin использует openssl.
    Хотя Qupzilla тоже устарела, а qtwebengine там нет, falkon тоже... тоже не очень вариант, может быть, из исходников собрать, но это долго и там могут быть самые разнообразные проблемы, совместимость у cygwin'a не идеальная.
    Ответ написан
    Комментировать
  • Нужна смена IP, чтобы мог через время войти еще раз на него (много ip)?

    @romancelover
    программист C++ под Linux
    Тут получается, что нужно зарезервировать себе сразу много IP, чтобы потом зайти на сервис с любого из этих IP. Если сервис поддерживает IPv6 - то ситуация получается проще, подключаетесь к туннельному брокеру, желательно с префиксом покрупнее, лучше /48 (чем меньше цифра, тем префикс крупнее). Заводите префикс целиком на свой компьютер и переключаете IP в настройках, например, для аккаунта 1 2001:db8:1234:1::1, для аккаунта 2 2001:db8:1234:2::1 и т.п. (лучше из разных /64 сетей - так как /64 это стандартный размер сети, сервис может сравнивать IP с точностью до первых 64 бит).
    Если не поддерживает - то сложно. Провайдер не подойдёт - в одно время он выделяет лишь один IP, в следующий раз к нему уже не вернёшься. Разве только если пул адресов небольшой и можно попасть на адрес с зарегистрированным аккаунтом (особенно если внутренние динамические адреса у провайдера в вашей местности заводятся на относительно небольшое число внешних, но не на один внешний: подключились, посмотрели внешний IP, если он соответствует какому-то аккаунту, подключаемся с этим аккаунтом, иначе регистрируем новый аккаунт с соответствием новому IP, или пропускаем и опять переподключаемся).
    Публичные VPN зарезаны на сервисе. Бесплатные прокси долго не живут, к их адресам тоже уже не вернёшься потом. VPS с большим количеством заведённых на него IP - возможно, но дорого, IPv4 адреса сейчас дефицитный ресурс. Один IP может стоить 100-150 рублей в месяц.
    Хотя что это за сервис такой, для которого IP должен быть статический, чтобы он сохранялся при повторных входах? не каждый провайдер предоставляет такую услугу.
    Ответ написан
    2 комментария
  • Установщики Windows и Linux не запускается на ноутбуке, как починить?

    @romancelover
    программист C++ под Linux
    Запускаете memtest, скорее всего он покажет, что какой-то участок памяти битый. После этого можно в параметрах загрузки linux в grub'e вписать исключение этого участка.
    https://unix.stackexchange.com/questions/75059/how...
    Ответ написан
    Комментировать
  • Можно ли в OpenVPN указать входящий и исходящий интерфейс как в 3proxy?

    @romancelover
    программист C++ под Linux
    Чтобы задать исходящий интерфейс, нужно использовать source-based routing. Это функция ОС, а не самого OpenVPN.
    echo 100 vpn >>/etc/iproute2/rt_tables (100 - id таблицы, vpn -название)
    ip route add default dev (ваш модем) gw (шлюз модема, если не ppp) table vpn
    ip rule add from (адрес клиента внутри vpn) lookup vpn
    Ответ написан
    4 комментария
  • Внутренний сайт по имени, для новых устройств (не по айпи) Это возможно?

    @romancelover
    программист C++ под Linux
    Captive порталы работают по следующей схеме:
    1) пользователь подключается к сети Wi-Fi;
    2) вводит какой-то произвольный адрес HTTP (на мобильных устройствах само устройство может обращаться к определённому адресу для проверки наличия портала);
    3) из сети вместо запрошенной страницы приходит redirect на страничку captive портала (при этом все остальные порты закрываются, интернет недоступен);
    4) пользователь на странице может ознакомиться с информацией о сети, как-то подтвердить свою личность (например, введя код из смс на свой номер телефона) и перейти к использованию сети;
    5) после подтверждения перехода сеть отключает перенаправление и блокировку остальных портов и интернет становится доступен.
    Схема не очень надёжная (пользователи идентифицируются по мак-адресам, которые можно менять и которые передаются в открытом виде), но широкораспространённая. В вашем случае перенаправление будет идти на локальный сайт. Можно сделать там открытие доступа в интернет, а можно оставить только локальный доступ в гостевой сети. Вбивать адрес заранее пользователям не нужно, перенаправление идёт автоматически.
    Ответ написан
    Комментировать
  • Проксировать трафик снаружи на Localhost?

    @romancelover
    программист C++ под Linux
    socat tcp-l:8088,fork,reuseaddr tcp:127.0.0.1:8888
    Проверил - работает, только номер внешнего порта нужно задать другой - иначе будет выдано, что адрес уже используется, даже если порт 8888 открыт только на localhost.
    Ответ написан
    Комментировать
  • Как скачать видео с этого сайта?

    @romancelover
    программист C++ под Linux
    youtube-dl по этой ссылке качает.
    Ответ написан
    Комментировать
  • Как разрешить доступ к сайту только в Италии?

    @romancelover
    программист C++ под Linux
    Ответ написан
    Комментировать
  • Что делать если корневой раздел Mint переполнен и она не запускается?

    @romancelover
    программист C++ под Linux
    Есть вариант и без загрузочной флешки, но он сложный для начинающих.
    В параметры загрузки в меню grub (по клавише е) дописать root=/dev/sda1 rw init=/bin/bash, потом нажать Ctrl-x.
    Вместо /dev/sda1 может быть другой диск, на котором стояла система (обозначение такое же, как и на рабочей системе).
    Система запустится в минимальном режиме командной строки (если этого не произойдёт, можно попробовать удалить строчку initrd). Можно попробовать запустить mc, если он стоял, либо удалять файлы командой rm, переходя по каталогам командой cd. Но какие-то команды в этом режиме могут не работать. Может ругаться на нехватку /dev, /proc (тогда просто запустите mount -t proc none /proc, mount -t devtmpfs none /dev).
    После удаления файлов выполните sync, потом mount / -o remount,ro а потом reboot, или нажмите Ctrl-Alt-Del, или введите exit (тогда система выдаст panic, так как у ней не осталось init процесса, но это уже не важно).
    Ответ написан
    Комментировать
  • Можно ли в убунту отключать файл подкачки, закоментировав строку в fstab?

    @romancelover
    программист C++ под Linux
    Можно.
    Я всегда на линуксе файл подкачки отключаю, чтобы сократить нагрузку на SSD. Но у меня памяти много.
    Можно ещё поставить ZRAM своп. Когда оперативная память заполняется, он сжимает данные в памяти (вместо того, чтобы переносить на диск), и позволяет высвободить часть памяти.
    Недостаток отсутствия свопа состоит в том, что если вдруг память заполнится, система подвиснет, а потом запустит OOM Killer и начнёт убивать процессы, чтобы освободить память. Если ему попадётся какой-то полезный процесс, обрабатывающий ваши данные, его данные будут потеряны.

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

    @romancelover
    программист C++ под Linux
    А в чем проблема? роутеры обычно объединяют Wi-Fi и проводную сеть в один сегмент сети. Можно подключить телефон к тому же Wi-Fi роутеру, к которому компьютер подключён кабелем, и ввести его IP на Wi-Fi, он должен быть доступен.
    Есть ещё один вариант, которым я предпочитаю пользоваться. Телефон подключается USB кабелем к компьютеру, включается режим "USB-модем", в свойствах подключения сети от телефона указывается "использовать соединение только для ресурсов в этой сети", чтобы компьютер не пытался выходить в интернет с телефона. На телефоне запускается приложение, для подключения к нему по проводу нужен IP-адрес проводного подключения, обычно это 192.168.42.129 (по ipconfig /all должен выводиться, либо как шлюз, либо как DHCP сервер). По проводу связь надёжнее.
    Можно аналогично запустить на телефоне точку доступа Wi-Fi, и указать при подключении на компьютере "использовать соединение только для ресурсов в этой сети" и вбить адрес точки доступа на телефоне.
    Ответ написан
  • Как сжать видео размером 2,5 ГБ?

    @romancelover
    программист C++ под Linux
    ffmpeg - бесплатно, но работает через командную строку. Есть под Windows и под Linux.
    Пример перекодирования видео из 720 в 480:
    ffmpeg -i input.mp4 -vf scale=720:480 output.mp4
    размер файла уменьшился с 55 Мб до 14 Мб.
    Через параметры командной строки можно задавать что угодно: формат, битрейт, разрешение, можно обрезать по времени и т.п. Примеры командной строки для разных действий можно нагуглить.
    Ответ написан
    Комментировать
  • Почему не включается экран после блокировки либо сна на KDE Plasma (Debian 10)?

    @romancelover
    программист C++ под Linux
    У меня (хоть не на Debian, а на Gentoo) в пакете nvidia-drivers есть systemd unit'ы nvidia-hibernate.service, nvidia-resume.service и nvidia-suspend.service. Они вызывают скрипт /usr/bin/nvidia-sleep.sh с параметрами suspend и resume при уходе в ждущий режим и при просыпании, который передаёт драйверу соответствующую команду. См. документацию NVidia (https://download.nvidia.com/XFree86/Linux-x86_64/4...).

    Мне для нормальной работы ждущего режима в KDE Plasma с видеокартой NVidia достаточно было сделать systemctl enable для трёх указанных юнитов. Без этого система не хотела переходить в ждущий режим. Может быть, у вас отрабатывает suspend, но не отрабатывает resume?
    Ответ написан
    Комментировать
  • Есть ли метод ограничивающий скорость интернета для определённого процесса? Если нет, как это можно реализовать?

    @romancelover
    программист C++ под Linux
    https://unix.stackexchange.com/questions/328308/ho...

    Это может быть только специфичный для каждой операционной системы API. В Linux этого можно добиться через создание cgroup, назначение его процессу и создание дисциплины обработки пакетов для этого cgroup.
    Ответ написан
    Комментировать
  • Как полноценно работать с Linux без интернета?

    @romancelover
    программист C++ под Linux
    В Gentoo можно переопределить команду скачивания пакета (FETCHCOMMAND), чтобы она вместо скачивания пакета с исходниками выводила в список ссылку на него вместе с именем файла, которое ожидает emerge. Потом список записывается на флешку, файлы скачиваются на компе с интернетом, а потом переписываются в каталог distfiiles, и emerge их видит.
    Я не могу сказать, может быть аналогичный способ можно применить и к другим дистрибутивам, чтобы не качать весь репозиторий целиком? У Gentoo репозиторий делится на две части, дерево portage и distfiles, portage это индексная часть, которая отвечает за информацию о том, как собирать пакеты и какие между ними зависимости, и имеет сравнительно небольшой размер, около 200 Мб или 50 Мб в сжатом архиве, а distfiles это просто файлы с архивами исходников, которые могут весить много. У Debian обе части хранятся в одном дереве. Можно было бы скачивать только индекс (Packages.gz), а пакеты только по необходимости, как описано выше, через переопределение команды загрузки.
    Если компьютеров в сети с одинаковой конфигурацией Gentoo много (архитектурой, use флагами, параметрами сборки, зависящими от процессора), то пакеты собираются на одном по указанной схеме (надо ещё прописать FEATURES="buildpkg" для формирования бинарных пакетов), а на остальных прописывается PORTAGE_BINHOST, указывающий на этот компьютер, чтобы ставить из бинарника, а не собирать на каждом.
    https://wiki.gentoo.org/wiki/Binary_package_guide
    Если конфигурация на разных компьютерах разная, то можно просто сделать общую директорию distfiles по NFS, чтобы не копировать файлы вручную.
    Ответ написан
    Комментировать
  • Как узнать совместимость пк с ОС?

    @romancelover
    программист C++ под Linux
    Если установщик выдаст ошибку, можно попробовать драйвер SATA в дистрибутив добавить с помощью программы nLite, чтобы он был доступен уже на первом этапе установки системы. Например как по ссылке https://www.wikihow.com/Slipstream-Your-SATA-Drive...
    30 Гб для XP достаточно, если тяжёлые игрушки и программы не ставить (хотя можно ставить их на другой раздел).
    Граб заменяется при установке винды своим загрузчиком, потом придётся загрузиться с LiveCD и восстановить его (при этом в него также добавится пункт загрузки Windows - установочный скрипт Grub в Ubuntu умеет определять Windows).
    Ответ написан
    Комментировать
  • Как выводить переменную в MessageBox?

    @romancelover
    программист C++ под Linux
    В языках С и С++ и WinApi LPCTSTR - это просто указатель на последовательность символов в памяти. Прибавление к нему числа не меняет последовательность символов, а только переводит позицию указателя. Поэтому код в примере выведет строку с 10-го символа (считая с 0), а не допишет число к строке.
    Чтобы добиться нужного результата, нужно создать новую последовательность символов и передать указатель на неё в функцию. На Си можно использовать функции wcscpy, wcscat и _itow (или как её аналог в вашем компиляторе называется) или wsprintf (неудобно тем, что нужно следить за количеством символов, выделяемых под строку), на С++ лучше создать std::wstring (wstring так как тут LPCTSTR, и длинные символы, и программа собирается в Unicode режиме), записать туда строку и число (можно при помощи wostringstream), а потом передать в MessageBox указатель с помощью c_str().
    Ответ написан
  • Как убрать ошибку?

    @romancelover
    программист C++ под Linux
    Под Linux программа собирается такой командой:
    gcc tcl.c -ltcl -ltk -o tcl
    и запускается нормально.

    Под другими ОС аналогично, надо указать пути к библиотекам Tcl и Tk. В Linux -ltcl это просто сокращение для libtcl.so, а в Windows, насколько помню, указываются LIB-файлы.
    Ответ написан
    Комментировать