Првото стартување не успева со порака за /dev/net/tun или TUN/TAP уред што не може да се отвори. Сертификатите уште не се прочитани, така што во профилот ништо не е виновно. Демонот бара од јадрото објект што овој гостин го нема.

Тој објект е знаковен уред поддржан од tun модулот. Дали можете да го создадете зависи од тоа кој го поседува јадрото.

Што бара демонот од јадрото

OpenVPN го отвора /dev/net/tun и бара од драјверот интерфејс. Драјверот е tun модулот, а јазолот на уредот е рачката со која корисничкиот простор го достигнува. Ако модулот не е вчитан, јазолот може да недостасува или отворањето да не успее. Ниту едната состојба не се поправа со уредување на server.conf.

Прочитајте ја грешката прво како прашање за платформата. Грешка во конфигурацијата се појавува откако уредот ќе се отвори, а не порано.

VM или гостин со споделено јадро

На KVM, Xen или друга целосна виртуелна машина вие го контролирате јадрото. Можете да вчитате модули и да го создадете јазолот. На OpenVZ, Virtuozzo или контејнер во стил на LXC гостинот го дели јадрото на домаќинот, па root во него не може да вчита модул што домаќинот не го вчитал.

Затоа истата грешка има два многу различни сопственици. Во првиот случај можете да ја поправите од внатрешноста на инстанцата. Во вториот барате од домаќинот или од провајдерот да изложи нешто.

Извршете ls -l /dev/net/tun, lsmod | grep tun и ip -brief link show пред да одлучите во кој случај сте.

На VM, вчитајте го модулот при стартување

На виртуелна машина modprobe tun обично го создава јазолот на уредот. Проверете дали се појавил, потоа направете го вчитувањето трајно преку конфигурацијата на модули на дистрибуцијата наместо да се потпирате на команда внесена еднаш. Јазол што исчезнува по рестартирање станува истиот тикет следниот месец.

Проверете и дали јадрото што сте го стартувале воопшто го има модулот. Скратено јадро од производител може да го нема.

Ако јазолот постои, но отворањето уште не успева, следни сомнителни се дозволите и major/minor броевите на уредот. Тоа се локални поправки, не барања до провајдерот.

Во контејнер, уредот му припаѓа на домаќинот

Во контејнер, уредот и можноста се два одделни услова. Извршното опкружување мора да го пропушти /dev/net/tun, а контејнерот ја бара мрежната можност за да создаде интерфејс. Rootless извршно опкружување што не дава ниту едно од двете ќе продолжува да ја дава истата грешка при отворање, како и да е напишан профилот. Многу OpenVZ домаќини нудат TUN/TAP прекинувач во панелот за клиенти, а неговото вклучување заедно со рестартирање често е целото решение.

Прашајте го провајдерот две прецизни прашања: дали tun модулот е вчитан на домаќинот и дали уредот е достапен во оваа инстанца? Нејасен тикет добива нејасен одговор.

Зошто повторното градење на модулот ретко помага

Градење модул во гостинот ретко помага. Компајлирањето бара конфигурација на точното јадро што работи, а /proc/config.gz е изборен и често го нема на минимални слики. Дури и работен модул не може да се вметне во јадро што контејнерот не го поседува.

Откако уредот ќе се појави, рестартирајте ја услугата и потврдете го интерфејсот пред да тестирате сообраќај. Гледањето tun0 покажува дека демонот го отворил уредот. Тоа уште не кажува ништо за проследување, firewall правила или рутите што ги добиваат клиентите.

Тоа се одделни прашања со одделни докази. Уред што недостасува е неуспех на предуслов; тунел што постои, но не пренесува ништо, е неуспех на политика.

Поврзани статии