LINUX.ORG.RU

Сообщения omegatype

 

Семейный VPN для доступа к домашнему серверу

 ,

Народ, расскажите, пожалуйста, допустим, хочется организовать семейный сервер с подключением из нескольких точек внутри РФ. Для этого выбираем хостинг внутри РФ и пресловутый VPN.

Это сейчас легально и блокируется ли? Есть ли какие-то фильтры по точке назначения трафффика, можно ли безопасно по какому-нибудь openvpn-у организовывать сетки внутри страны? Без намерения обходить что-бы там ни было, а для доступа к собственному серверу, фактически аналог tailscale хочется.

omegatype
()

Как скоро драйверы прилитают в Ubuntu? Нет звука, микрофона и Bluetooth в ASUS Zenbook

 , , , ,

И прилетают ли вообще?

В апреле сего года был комментарий https://github.com/thesofproject/linux/issues/5325#issuecomment-2815363125 о работе звука, микрофона и Bluetooth на таком ноуте на версиях:

alsa-ucm 1.2.14 
alsa-sof-firmware  2025.01.1
linux-firmware 20250410
kernel 6.14.2

В ubuntu25 всё младше. Как полагаете, обновление в принципе будет? Как скоро?

omegatype
()

Откуда вы узнаете о новом ПО?

 , ,

Неделю назад по случайному стечению обстоятельств открыл для себя Obsidian, этот софт прекрасен!

Откуда вы узнаете о новом или вообще хорошем софте? Куда можно смотреть, выглядывая из криокамеры? Какие треды на reddit или типа того? Понятно, что вкусы у всех разные, и понятие «хороший новый софт» можно трактовать любым образом, но всё же.

omegatype
()

Какие подходы можно использовать для разработки приложения отрисовки оверлея на экране?

 , , , ,

Народ, посоветуйте, пожалуйста, каким самым простым способом можно было написать приложение примерно следующего свойства:

  • обозначаем некий фрагмент экрана
  • приложение захватывает изображением с этой части экрана
  • обрабатывает его некоторым алгоритмом, который выдает некие инструкции о том, что и как необходимо нарисовать поверх этого кадра (самый простой пример в качестве результата png с прозрачностью и дополнительной разметкой)
  • приложение рисует эту дополнительную часть на экране

и, главное,

  • пользователь всё это время может взаимодействовать с этой областью экрана интерактивно (помещать туда окна других приложений, закрывать, открывать и т.д.)

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

Функциональный пример подобного приложения: прогнать кадры через нейронку-детектор и отрисовать баундинг-боксы поверх кадра. Но, т.к. захват будет происходить с экрана, то захваченным кадром может является картинка в браузере, или фотография, открытая в просмотрщике изибражений. То есть всё, что попадает в целевую область экрана «гонится» на нейронку и затем рисуем боксы. Естественно, что боксы от предыдущей отрисовки не должны попадать в следующий захваченный кадр (отсюда термин оверлей).

Правильно понимаю, что в такой формулировке, это задача, требующая работы на уровне X или wayland-а?

omegatype
()

Кастомный корпус с монтированием на стену под домашний сервер

 , ,

Посоветуйте корпус типа Meshify 2 Dark Tempered Glass но более просторный и низкопрофильный, хотелось бы повесить его на стенку под потолок - как развлечение (мигает разноцветно вечеров в темном коридоре) и как домашний сервер.

Требования:

  • возможность установить обыкновенную пк материнку и кулер с низким профилем
  • низкий профиль в принципе - кирпич на стене, да, но не очень широкий кирпич
  • установка и хорошее охлаждение 6 hdd
  • эстетичный внешний вид

Если встать прямо напротив стены и смотреть в неё «в упор», то нужно видеть прозрачную часть корпуса, которая мигает. При этом вид дна должен быть эстетичным. При этом вид с левой стороны должен быть эстетичным, а с правой стороны не важен. Исходи из этого требование:

  • эстетичный внешний вид дна или возможность смонтировать всё зеркально (то есть материнку на левую стенку, а не на правую) и повесить всё вверх ногами
  • эстетичный внешний вид левой стороны
omegatype
()

Бдущее JIRA в России?

 , ,

Как вы оцениваете будущее продуктов Atlassian в РФ? Тех, которые уже есть - с них не так-то просто соскочить в более или менее крупной организации, с историей и данными, которые уже в этой jira + confluence.

Облако закрыли, да, но self-hosted жив и какое-то время точно будет жить.

Некоторые «приземлили» из облака в self-hosted.

Каков будет юридический статус self-hosted решений? Будут ли компании как-то заставлять отказывать от развернутых у себя экземпляров, если они будут признаны не имеющими лицензий?

omegatype
()

VirtualBox не работает на свежей установке ArchLinux

 ,

Народ, подскажите, пожалуйста, создаю новую VM, нажимаю Start, диалоговое окно «Starting virtual machine …» появляется со вращающимся курсором и далее ничего не происходит, окно так и висит.

$ lsmod | grep vbox
vboxnetflt             40960  0
vboxnetadp             28672  0
vboxdrv               651264  3 vboxnetadp,vboxnetflt

Хост - свежий arch, DE, virtualbox, никаких изощрений в установке нет, дефолтные настройки, дефолтное ядро. Вируализация в BIOS включена. Пробовал разные конфигурации флагов на вкладке system в настройках VM - не помогает.

По строчке лога The machine is not mutable (state is Starting) толком ничего не нагуглил, есть идеи?

00:00:00.000257 main     VirtualBox XPCOM Server 7.0.8 r156879 linux.amd64 (Apr 18 2023 21:49:14) release log
00:00:00.000258 main     Log opened 2023-07-06T08:30:38.797655000Z
00:00:00.000258 main     Build Type: release
00:00:00.000259 main     OS Product: Linux
00:00:00.000259 main     OS Release: 6.4.1-arch2-1
00:00:00.000260 main     OS Version: #1 SMP PREEMPT_DYNAMIC Tue, 04 Jul 2023 08:39:40 +0000
00:00:00.000269 main     DMI Product Name: System Product Name
00:00:00.000271 main     DMI Product Version: System Version
00:00:00.000275 main     Firmware type: UEFI
00:00:00.000478 main     Secure Boot: Disabled
00:00:00.000490 main     Host RAM: 128554MB (125.5GB) total, 124309MB (121.3GB) available
00:00:00.000491 main     Executable: /usr/lib/virtualbox/VBoxSVC
00:00:00.000491 main     Process ID: 10152
00:00:00.000491 main     Package type: LINUX_64BITS_GENERIC (OSE)
00:00:00.001004 main     IPC socket path: /tmp/.vbox-evgeny-ipc/ipcd
00:00:00.104685 nspr-2   VirtualBox: object creation starts
00:00:00.105431 nspr-2   Home directory: '/home/evgeny/.config/VirtualBox'
00:00:00.111213 nspr-2   Successfully initialised host USB using sysfs
00:00:00.112305 nspr-2   HostDnsMonitor: initializing
00:00:00.112681 nspr-2   NAT: resolv.conf: nameserver 10.0.0.2
00:00:00.112719 nspr-2   NAT: resolv.conf: nameserver 10.10.0.2
00:00:00.112730 nspr-2   NAT: resolv.conf: nameserver 192.168.1.1
00:00:00.112754 nspr-2   HostDnsMonitor: updating information
00:00:00.113042 nspr-2   HostDnsMonitor: old information
00:00:00.113054 nspr-2     no server entries
00:00:00.113061 nspr-2     no domain set
00:00:00.113065 nspr-2     no search string entries
00:00:00.113069 nspr-2   HostDnsMonitor: new information
00:00:00.113074 nspr-2     server 1: 10.0.0.2
00:00:00.113079 nspr-2     server 2: 10.10.0.2
00:00:00.113084 nspr-2     server 3: 192.168.1.1
00:00:00.119717 nspr-2   VD: VDInit finished with VINF_SUCCESS
00:00:00.120163 nspr-2   ERROR [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={aac6c7cb-a371-4c58-ab51-0616896b2f2c} aComponent={SystemPropertiesWrap} aText={Cannot determine default Guest Additions ISO location. Most likely they are not available}, preserve=false aResultDetail=0
00:00:00.122470 nspr-2   VirtualBox: object created
00:00:00.394164 nspr-4   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:00.395955 nspr-4   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:00.429100 nspr-2   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:00.430403 nspr-2   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:00.789609 nspr-3   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:00.796206 nspr-3   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:05.964581 nspr-3   ERROR [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={aac6c7cb-a371-4c58-ab51-0616896b2f2c} aComponent={SystemPropertiesWrap} aText={Cannot determine default Guest Additions ISO location. Most likely they are not available}, preserve=false aResultDetail=0
00:00:21.871688 nspr-4   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:21.873104 nspr-4   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:21.873695 nspr-2   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:21.874945 nspr-2   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:32.859919 createBase Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:32.866725 createBase Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:32.869120 nspr-5   Saving settings file "/home/evgeny/VirtualBox VMs/test_vm_1/test_vm_1.vbox" with version "1.19-linux"
00:00:32.877514 nspr-5   Finished saving settings file "/home/evgeny/VirtualBox VMs/test_vm_1/test_vm_1.vbox"
00:00:32.877549 nspr-5   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:32.883268 nspr-5   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:32.884154 nspr-5   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:32.885565 nspr-5   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:32.886287 nspr-5   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:32.887696 nspr-5   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:32.887826 nspr-4   Saving settings file "/home/evgeny/VirtualBox VMs/test_vm_1/test_vm_1.vbox" with version "1.19-linux"
00:00:32.889309 nspr-4   Finished saving settings file "/home/evgeny/VirtualBox VMs/test_vm_1/test_vm_1.vbox"
00:00:32.896938 nspr-5   Saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml" with version "1.12-linux"
00:00:32.898180 nspr-5   Finished saving settings file "/home/evgeny/.config/VirtualBox/VirtualBox.xml"
00:00:33.228329 nspr-5   ERROR [COM]: aRC=VBOX_E_INVALID_VM_STATE (0x80bb0002) aIID={300763af-5d6b-46e6-aa96-273eac15538a} aComponent={MachineWrap} aText={The machine is not mutable (state is PoweredOff)}, preserve=false aResultDetail=0
00:00:35.046927 nspr-4   Launched VM: 2415930608 pid: 10258 (0x2812) frontend: GUI/Qt name: test_vm_1
00:00:35.058635 nspr-2   ERROR [COM]: aRC=VBOX_E_INVALID_VM_STATE (0x80bb0002) aIID={300763af-5d6b-46e6-aa96-273eac15538a} aComponent={MachineWrap} aText={The machine is not mutable (state is PoweredOff)}, preserve=false aResultDetail=0
00:00:35.265506 nspr-6   ERROR [COM]: aRC=VBOX_E_INVALID_VM_STATE (0x80bb0002) aIID={300763af-5d6b-46e6-aa96-273eac15538a} aComponent={MachineWrap} aText={The machine is not mutable (state is PoweredOff)}, preserve=false aResultDetail=0
00:00:35.495671 nspr-3   ERROR [COM]: aRC=VBOX_E_OBJECT_NOT_FOUND (0x80bb0001) aIID={70401eef-c8e9-466b-9660-45cb3e9979e4} aComponent={ExtPackManagerWrap} aText={No extension pack by the name 'Oracle VM VirtualBox Extension Pack' was found}, preserve=false aResultDetail=0
00:00:35.535056 nspr-6   ERROR [COM]: aRC=VBOX_E_IPRT_ERROR (0x80bb0005) aIID={300763af-5d6b-46e6-aa96-273eac15538a} aComponent={SessionMachine} aText={Saved screenshot data is not available (VERR_NOT_SUPPORTED)}, preserve=false aResultDetail=-37
00:00:35.559845 nspr-6   ERROR [COM]: aRC=VBOX_E_INVALID_VM_STATE (0x80bb0002) aIID={300763af-5d6b-46e6-aa96-273eac15538a} aComponent={MachineWrap} aText={The machine is not mutable (state is Starting)}, preserve=false aResultDetail=0
00:00:35.856290 nspr-2   ERROR [COM]: aRC=VBOX_E_INVALID_VM_STATE (0x80bb0002) aIID={300763af-5d6b-46e6-aa96-273eac15538a} aComponent={SessionMachine} aText={The machine is not mutable or saved (state is Starting)}, preserve=false aResultDetail=0
00:00:35.860936 nspr-2   Saving settings file "/home/evgeny/VirtualBox VMs/test_vm_1/test_vm_1.vbox" with version "1.19-linux"
00:00:35.873655 nspr-2   Finished saving settings file "/home/evgeny/VirtualBox VMs/test_vm_1/test_vm_1.vbox"
00:00:35.881007 nspr-7   ERROR [COM]: aRC=VBOX_E_INVALID_VM_STATE (0x80bb0002) aIID={300763af-5d6b-46e6-aa96-273eac15538a} aComponent={MachineWrap} aText={The machine is not mutable (state is Starting)}, preserve=false aResultDetail=0
omegatype
()

Как проще всего мониторить температуру HDD в Prometheus?

 , , ,

Собираю домашний NAS, хотел бы следить за температурой HDD. Поставил ubuntu, prometheus, node_exporter и graphana.

Загрузил полный дашборд с сайта графаны, но не обнаружил там показаний температуры HDD.

Однако дефолтный node_exporter отправляет данные в lm_sensors, и есть drivetemp, который позволяет подмешать выхлоп датчиков с hdd в sensors. Единственная проблема в том, что https://github.com/lm-sensors/lm-sensors/issues/230 sensors выдает аппаратные адреса дисков, а не идентификаторы, т.е. если потом перекоммутировать диски, то метрики превратятся в тыкву. Переименование через /etc/sensors.d/drivetemp.conf не работают.

Вопрос в теме - как проще всего не потерять информацию о привязке адреса в идентификатору диска (как его выдает hddtemp) и организовать сбор метрик? Костылить кастомный exporter?

omegatype
()

Покритикуйте сборку ПК

 

Предпочтения:

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

В настоящий момент рассматриваю: Покритикуйте сборку ПК (комментарий)

omegatype
()

Приложение для заставки фото-рамки

 , ,

Подскажите способ, которым на мониторе машины под управлением ubuntu можно вывести фото/коллаж фото из заданной директории, меняющийся с некоторой частотой.

Возможно добавив туда время/погоду и курс валют?

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

Есть идеи?

omegatype
()

Балансировка параметризованного pytest-а на основе априорных данных в xdist

 , , ,

У меня есть тест в pytest, параметризованный примерно 30 значениями. И я заранее знаю, что некоторые параметры вычисляются дольше остальных. Если карта ляжет так, что два долгих теста лягут на один процесс, то получится что-то вроде:

Screenshot-20220603-112154.png

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

Проблема в том, что заранее неизвестно количество процессов, по-этому разделить тест на файлы просто так нельзя.

Можно формировать файлы рантаймом, конечно, но это как-то некрасиво, может кто что проще подскажет?

omegatype
()

Где вы храните схемы описания софта, подобные блок-схемам?

 , ,

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

Где вы размещаете подобные схемы и в чем их рисуете?

Хотелось бы держать это близко к коду, чтобы оно не протухало.

Пока вариант Shinx + png + исходник этого png (в любом формате в котором человек его рисовал, например drawio или tikz или svg)

omegatype
()

Почему не делают больше качественного DLC?

 ,

Кто тут из геймдева или сочувствующие?

Сколько в процентном отношении «стоит» создать для игры дизайн, движок\механики и сценарий?

Многие DLC выглядят как незначительные изменения в дизайне и механиках и значительные - в сценарии.

Вопрос: разве это не выгодно один раз разработать хороший дизайн и механики, и потом клепать (относительно более дешевые) DLC, каждая из которых будет полноценной главой игры - и продаваться?

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

Как пример игры, которая выглядит так, словно делает предложенный выше вариант приведу The Dark Pictures Anthology - хотел бы умышленно не обсуждать эту игру именно как игру (кому-то нравится, кому-то нет), но просто как принцип развития игры - они создают по игре в год (sic!) в стиле «тех же щей больше лей», а мне очень бы хотелось еще щей от ведьмака, dragon age, red alert 2, dishonored, elder skrolls, mass effect 2, kotor2.

omegatype
()

Порекомендуйте измеритель co2?

 ,

Просыпаюсь периодически ночью с ощущением «духоты» - перед сном проветриваем и такого ощущение в первой половине ночи нет. Читал в сети, что, возможно, комната наполняется co2 в течение 3-4 часов из-за плохой вентиляции. Хочется проверить эту гипотезу более или менее точным измерительным прибором.

Выбор вроде есть… https://mysku.ru/blog/aliexpress/82944.html https://zen.yandex.ru/media/breeeth/kak-vybrat-datchik-co2-5f9fc17e1f9f7379920c844d https://www.ixbt.com/live/topcompile/monitory-kachestva-vozduha-vybiraem-na-na-aliexpress.html https://habr.com/ru/company/dadget/blog/388405/

но эти статьи не дают впечатление comprehensive analysis, может кто подскажет на личном опыте какой датчик брать?

Самому делать не вариант, нужно готовое решение.

omegatype
()

Какой параметр autofs отвечает за время ожидания до отказа в чтении?

 , , ,

Есть несколько нестабильных NFS share-ов, к которым хотелось бы обращаться, если они доступны.

Монтирую их automount-ом и затем читаю через dolphin, krusader и иногда firefox.

Проблема - как только шара отваливается, браузер и ФМ блокируются и ждут в статусе disk sleep. Ждут порядка нескольких минут или около того.

Вопрос: как сократить это время? Если шара отвалилась, пусть будет IO error в течение нескольких секунд.

Arch.

omegatype
()

Помогите победить конфигурацию apache под два сайта по HTTPS

 , , , ,

На одном хосте расположились redmine и gitea, хотелось бы отдавать их оба через apache по HTTPS, одина по адресу https://www.MYSUPERHOST.fvds.ru/redmine, другой по https://www.MYSUPERHOST.fvds.ru/gitea. Есть сертификат от let’s encrypt.

  • redmine крутится при помощи плагина apache, кажется, fusion passanger.
  • gitea крутится своим собственным бинарём и слушает по http локальный порт 3000.

Пробую следующий конфиг, в результате redmine работает, но для gitea apache возвращает 404:


<VirtualHost *:80>

	ServerAdmin admin@example.com
	Servername MYSUPERHOST.fvds.ru
	RewriteEngine on
	RewriteCond %{SERVER_NAME} =www.MYSUPERHOST.fvds.ru [OR]
	RewriteCond %{SERVER_NAME} =MYSUPERHOST.fvds.ru
	RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>


<IfModule mod_ssl.c>
	<VirtualHost *:443>

		ServerAdmin admin@example.com
		Servername MYSUPERHOST.fvds.ru
		DocumentRoot /var/www/html/

		<Location /redmine>
			RailsEnv production
			RackBaseURI /redmine
			Options -MultiViews
		</Location>


		Include /etc/letsencrypt/options-ssl-apache.conf
		ServerAlias www.MYSUPERHOST.fvds.ru
		SSLCertificateFile /etc/letsencrypt/live/MYSUPERHOST.fvds.ru/fullchain.pem
		SSLCertificateKeyFile /etc/letsencrypt/live/MYSUPERHOST.fvds.ru/privkey.pem
	</VirtualHost>

	<VirtualHost *:443>

		SSLProxyEngine On
		ProxyPreserveHost On
		ProxyRequests off

		<Proxy *>
		    Order allow,deny
		    Allow from all
		</Proxy>

		ProxyPass /gitea http://localhost:3000
		ProxyPassReverse /gitea http://localhost:3000


		Include /etc/letsencrypt/options-ssl-apache.conf
		ServerAlias www.MYSUPERHOST.fvds.ru
		SSLCertificateFile /etc/letsencrypt/live/MYSUPERHOST.fvds.ru/fullchain.pem
		SSLCertificateKeyFile /etc/letsencrypt/live/MYSUPERHOST.fvds.ru/privkey.pem
	</VirtualHost>

</IfModule>
omegatype
()

Анализ соблюдения Stable Dependencies Principle (SDP) в Python

 ,

Прочитал у Роберта Мартина в Чистой архитектуре о принципе SDP, сразу захотелось узнать - есть ли утилита на python, которая проанализирует исходники проекта и построит диаграмму зависимостей сущностей? Чтобы можно было наглядно определить самые критичные по количеству зависимостей сущности и обратить на них особое внимание при корректировке архитектуры?

omegatype
()

Безопасность Ubuntu на VDS

 , , ,

Подскажите, есть ли какой-то начальный нормальный мануал по безопасному развёртыванию ubuntu? Задача следующая - купить простой vds, накатить туда из образа хостера ubuntu и на ней redmine + passanger + apache + gitlab.

На локалхосте делается на раз, но теперь вопрос - нужны ли какие-то дополнительные телодвижения при условии, что всё это смотри «в большую сеть». Понятное дело, что ssh по ключу и никаких qwerty-паролей, но что-то помимо этого?

omegatype
()

Помогите настроить шрифты (особенно Courier New)

 , , ,

Вот Courier New в mattermost https://pasteboard.co/JP2NAkZ.png, вот LOR https://pasteboard.co/JP2NFYm.png

Всё очень плохо - перебрал все значения hinting + галочка anti-aliasing и никак не рисуется лучше. Особенно Courier, это просто ужасно.

Не могу нагуглить нормальный мануал - читал вики арча, но без успехов.

firefox, archlinux, kde

omegatype
()

Использовать VPN только для ресурсов её сети

 , , , ,

Подскажите как победить корпоративных администраторов при подключении к корпоративному VPN и заставить использовать VPN только для тех ресурсов, которые внутри VNP?

Дано:

  • Arch Linux
  • l2tp
  • KDE
  • NetworkManager

До подключения VPN:

route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    100    0        0 enp0s31f6
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s31f6

После подключения VPN:

route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         0.0.0.0         0.0.0.0         U     50     0        0 ppp0
0.0.0.0         192.168.1.1     0.0.0.0         UG    100    0        0 enp0s31f6
10.0.102.1      0.0.0.0         255.255.255.255 UH    50     0        0 ppp0
188.65.107.46   192.168.1.1     255.255.255.255 UGH   100    0        0 enp0s31f6
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s31f6
192.168.1.1     0.0.0.0         255.255.255.255 UH    100    0        0 enp0s31f6

При это весь интернет-трафик начинает маршрутизироваться через VPN:

traceroute google.com
traceroute to google.com (173.194.73.101), 30 hops max, 60 byte packets
 1  10.0.102.1 (10.0.102.1)  2.353 ms  3.085 ms  3.085 ms
 2  41.107.rekkon.ru (188.65.107.41)  5.219 ms  5.368 ms  5.549 ms
 3  10.80.202.9 (10.80.202.9)  3.287 ms  3.238 ms  3.262 ms
 4  rascom.inet2.ru (85.112.122.13)  3.301 ms  3.577 ms  3.596 ms
 5  google-gw.rascom.as20764.net (81.27.254.18)  3.740 ms  3.762 ms  3.710 ms
 6  108.170.250.99 (108.170.250.99)  4.665 ms  3.560 ms 108.170.250.146 (108.170.250.146)  2.847 ms
 7  216.239.50.132 (216.239.50.132)  18.863 ms 209.85.249.158 (209.85.249.158)  19.732 ms *

Если же в настройках NM поствить Use only for resources on this connection, то:

route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    100    0        0 enp0s31f6
10.0.102.1      0.0.0.0         255.255.255.255 UH    50     0        0 ppp0
188.65.107.46   192.168.1.1     255.255.255.255 UGH   100    0        0 enp0s31f6
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s31f6
192.168.1.1     0.0.0.0         255.255.255.255 UH    100    0        0 enp0s31f6

интернет-трафки начинает тормозить, но маршрутизироваться через локальное соединение, а корпоративные ресурсы отваливаются.

У меня есть подозрение, что это происходит из-за того, что DNS не работает. VPN подсовывает два сервера:

$ cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 10.0.0.2
nameserver 10.10.0.2
nameserver 192.168.1.1

До которых с текущей таблицей маршрутизации мы идём через локальную сеть, хотя должны использовать ppp0:

$ traceroute 10.0.0.2
traceroute to 10.0.0.2 (10.0.0.2), 30 hops max, 60 byte packets
 1  _gateway (192.168.1.1)  0.497 ms  0.468 ms  0.452 ms
 2  * * *

Итого вопрос: **как сказать NM «маршрутизируй полученные при VPN-соединении DNS-сервера через эту же самую VPN-сеть»?

Ну или же как-то иначе подойти к решению задачи?

omegatype
()

RSS подписка на новые темы