Zář 03

ConnMan, správca internetového pripojenia

ConnMann je ďalším alternatívnym správcom internetového pripojenia, ktorý zvláda drôtovú i bezdrôtovú sieť. Primárne ide terminálovú utilitku s niekoľkými grafickými nadstavbami. Káblové pripojenie dokáže rozoznať a spracovať automaticky.

 

 

Inštalácia programu

Program sa nachádza v oficiálnych repozitároch:

sudo pacman -S connman
yay -S connman-git

Inštalácia programu bez použitia pomocníka:

git clone https://aur.archlinux.org/connman-git.git
cd connman-git
makepkg -sri

Inštalácia voliteľných závislostí:

sudo pacman -S wpa_supplicant
sudo pacman -S bluez
sudo pacman -S openvpn
yay -S wpa_supplicant-git
yay -S bluez-git
yay -S openvpn-git

Inštalácia voliteľných závislostí bez použitia pomocníka:

git clone https://aur.archlinux.org/wpa_supplicant-git.git
cd wpa_supplicant-git
makepkg -sri
git clone https://aur.archlinux.org/bluez-git.git
cd bluez-git
makepkg -sri
git clone https://aur.archlinux.org/openvpn-git.git
cd openvpn-git
makepkg -sri

Grafické nadstavby a aplety:

yay -S cmst
yay -S connman-ncurses-git
yay -S connman-ui-git
yay -S connman_dmenu
yay -S econnman
yay -S lxqt-connman-applet
yay -S connman-gtk

cmst je Qt grafické rozhranie
connman-ncurses je jednoduché terminálové UI bez plnej funkcionality, no s podporou použitia bez X
ConnMan-UI je GTK3 aplet
connman_dmenu je klient pre dmenu.
Econnman je aplet Enlightenment
LXQt-Connman-Applet je aplet pre LXQt
connman-gtk je GTK grafické rozhranie
gnome-extension-connman je Gnome3 rozšírenie, ktoré neobsahuje plnú funkcionalitu bez potreby inštalácie connman-gtk

 

Pomoc a manuálová stránka:

man connman
connmanctl --help
connmanctl -h

 

Povolenie služby pri štarte systému

Predtým, než povolíme službu, potrebujeme zakázať všetky ostatné, ktoré súvisia so správou siete:

sudo systemctl disable NetworkManager.service
sudo systemctl disable wicd.service
sudo systemctl disable dhcpcd.service
sudo systemctl disable dhcpcd@ROZHRANIE.service
sudo systemctl disable netctl-ifplugd@ROZHRANIE.service
sudo systemctl disable netctl-auto@ROZHRANIE.service

Povolenie služby:

sudo systemctl enable connman.service

 

Pracovanie s terminálovou verziou

Povolenie a zakázanie wifi:

Kontrola, či je wifi povolené:

connmanctl technologies

Výstup smerodajného riadku:

Powered = True/False

 

Povolenie wifi:

connmanctl enable wifi

Zakázanie wifi:

connmanctl disable wifi

 

Pracovanie s wifi sieťami:

Skenovanie dostupných wifi sietí:

connmanctl scan wifi

Zoznam dostupných wifi služieb:

connmanctl services

Príklad výstupu:

*AO MojaSieť       wifi_dc85de828967_68756773616d_managed_psk
    WifiSieť1      wifi_dc85de828967_38303944616e69656c73_managed_psk 
    WifiSieť2      wifi_dc85de828967_3257495245363836_managed_wep
    Nezabezpečená  wifi_dc85de828967_4d6568657272696e_managed_none

 

Kontrola stavu (pripojenia na internet):

connmanctl state

Príklad výstupu:

State = online
OfflineMode = False
SessionMode = False

 

Pripojenie ku nezabezpečenej sieti:

Skenovanie dostupných wifi sietí:

connmanctl scan wifi

Zoznam dostupných wifi služieb:

connmanctl services

Príklad výstupu:

*AO MojaSieť       wifi_dc85de828967_68756773616d_managed_psk
    WifiSieť1      wifi_dc85de828967_38303944616e69656c73_managed_psk 
    WifiSieť2      wifi_dc85de828967_3257495245363836_managed_wep
    Nezabezpečená  wifi_dc85de828967_4d6568657272696e_managed_none

Pripojenie ku nezabezpečenej sieti:

connmanctl connect wifi_dc85de828967_4d6568657272696e_managed_none

 

Pripojenie ku zabezpečenej sieti:

Prepnutie do interaktívneho módu:

connmanctl

Skenovanie dostupných wifi sietí:

scan wifi

Zoznam dostupných wifi služieb:

services

Príklad výstupu:

*AO MojaSieť       wifi_dc85de828967_68756773616d_managed_psk
    WifiSieť1      wifi_dc85de828967_38303944616e69656c73_managed_psk 
    WifiSieť2      wifi_dc85de828967_3257495245363836_managed_wep
    Nezabezpečená  wifi_dc85de828967_4d6568657272696e_managed_none

Zaregistrovanie agenta pre požiadavky užívateľa:

agent on

Pripojenie ku zabezpečenej sieti:

connmanctl> connect wifi_dc85de828967_38303944616e69656c73_managed_psk

Príklad výstupu:

Agent RequestInput wifi_dc85de828967_38303944616e69656c73_managed_psk
  Passphrase = [ Type=psk, Requirement=mandatory ]
  Passphrase?

Ukončenie interaktívneho módu:

quit

 

connman-gtk

 

Tipy a triky, riešenie problémov

Vyhnutie sa zmene názvu hostiteľa:

V predvolenom nastavení k tomuto dochádza. Čo môže spôsobovať problémy s X authority.

Vyskytujú sa nasledovné chybové hlášky:

No protocol specified
Can't open display: :0.0

Pomocou nejakého textového editoru si otvoríme (alebo vytvoríme) konfiguračný súbor:

 sudo gedit /etc/connman/main.conf

Do ktorého pridáme (do sekcie General):

[General]
AllowHostnameUpdates = false

Následne sa reštartuje služba:

sudo systemctl restart connman.service

 

Preferované drôtové pripojenie pred bezdrôtovým:

Štandardne ConnMan neuprednostňuje kábel pred wifi.

Pomocou nejakého textového editoru si otvoríme (alebo vytvoríme) konfiguračný súbor:

sudo gedit /etc/connman/main.conf

A do súboru (do sekcie General) pridáme nasledujúci riadok:

[General]
PreferredTechnologies=ethernet,wifi

 

Súčasné pripojenie ku káblu aj wifi:

Pomocou nejakého textového editoru si otvoríme (alebo vytvoríme) konfiguračný súbor:

sudo gedit /etc/connman/main.conf

A do súboru (do sekcie General) pridáme nasledujúci riadok:

[General]
SingleConnectedTechnology=true

 

Vyhnutie sa konfliktu s lokálnym DNS serverom:

Vzhľadom k tomu, že ConnMan obsahuje svoj vlastnú DNS proxy, môže dochádzať ku konfliktu, ktorý sa prejavuje nasledujúcou chybovou hlášku:

named[529]: could not listen on UDP socket: address in use

Zistenie, ktorý program využíva požadované porty:

sudo ss -tulpn

Riešením je vytvorenie potrebného konfiguračného súboru (spolu s potrebným adresárom):

sudo mkdir /etc/systemd/system/connman.service.d
sudo gedit /etc/systemd/system/connman.service.d/disable_dns_proxy.conf

Ktorý bude obsahovať:

[Service]
ExecStart=
ExecStart=/usr/bin/connmand -n --nodnsproxy

 

Zakázanie konkrétneho rozhrania:

Sú programy (ako napríklad Docker), ktoré vytvárajú svoje vlastné virtuálne rozhrania. Ak sa ConnMan k niektorému takémuto rozhraniu pokúša pripojiť, spomaľuje to načítanie služby či rýchlosť pripojenia. Riešením je ich zakázať. Taktiež sa odporúča zakázať mená internetových rozhraní, aby sa predišlo ku pokusom o pripojenie predtým ako ich systemd/udev premenuje napríklad na enp3s0.

Pomocou nejakého textového editoru si otvoríme (alebo vytvoríme) konfiguračný súbor:

sudo gedit /etc/connman/main.conf

A do súboru (do sekcie General) pridáme nasledujúci riadok:

[General]
NetworkInterfaceBlacklist = vmnet, vboxnet, virbr, IFB, Ukotviteľné, Veth, eth, WLAN

Následne sa reštartuje služba:

sudo systemctl restart connman.service

 

Error /net/connman/technology/wifi: Not supported

Je potrebné nainštalovať wpa_supplicant:

sudo pacman -S wpa_supplicant

A následne reštartovať službu:

sudo systemctl restart connman.service

 

Error /net/connman/technology/wifi: No carrier

Je potrebné povoliť wifi:

connmanctl enable wifi

Poprípade skontrolovať blokovanie:

rfkill list

A následne odblokovať:

rfkill unblock all

 

“Not registered”, or “Method “Connect” with signature … doesn’t exist”

Prejavuje sa nasledujúcimi chybovými hláškami:

Error /net/connman/service/<SSID>: Method "Connect" with signature "" on interface "net.connman.Service" doesn't exist
Error /net/connman/service/<service_id>: Not registered

Na nápravu je potrebné spustiť agenta (agent on):

connmanctl
agent on
quit

 

2 comments

    • Ivan Lindovský dne 8. září 2018 v 17:01
    • Odpovědět
    Google Chrome 69.0.3497.81 GNU/Linux x64

    Super prehľad správcami pripojení len mi tam chýba taká ta čerešnička na torte a síce odporúčania, kedy je aký správca najvhodnejšie používať. Napríklad, ak používam arch linux so systemd, je najlepšie používať správcu sietí systemd alebo je tam nejaká iná súvislosť a s týmto to vôbec nesúvisí?

    1. Firefox 64.0 GNU/Linux x64

      Používaj toho správcu, ktorý ti vyhovuje najviac. NetworkManager je najkomplexnejší, ale zase pri štarte aj najpomalší. Trochu alebo viac spomaľuje bootovanie. Ak sa tak deje, je lepšie použiť iný. systemd-networkd je zase, čo sa týka bootovania najrýchlejší. Ale zase neprichádza s grafickým rozhraním. Ale pri wifi sa dá použiť s wpa_supplicant (má grafické rozhranie aj cli verziu) či iwd (má iba cli verziu). Ja používam systemd-networkd, connman a wicd (chcem ho nahradiť za connman).
      wicd je napríklad trochu pomalší pri načítaní siete. Keď som ho skúšala na desktope, kde používam startup skript pre aktualizácie, na ich zobrazenie som musela načítanie skriptu posunúť. Pri zvyšných sa to nedialo.
      A tú tvoju akožečerešničku nemám v pláne spracovať. Ak ti to chýba, napíš o tom sám.

Napsat komentář

Your email address will not be published.

%d blogerům se to líbí: