Zdravím,
je nějaká možnost, jak bych mohl mimo LAN přehrávat na mobilu hudbu uloženou na HDD v NAS Boxu Omnie, bez toho aniž bych měl veřejnou IP adresu?
Zatím jsem zkusil Emby DLNA server spuštěný v LXC kontejneru. V síti LAN přehrávání v Emby klientu pro Android funguje. Ale navzdory tomu co je uváděno na webu Emby: “Vezměte si svá
média kamkoli s Emby”, se mi nepodařilo z WAN připojit Android klienta k Emby serveru v Omnii.
V síťování se v podstatě skoro vůbec nevyznám, ale z některých příspěvků v diskuzním fóru na webu Emby jsem vyrozuměl, že asi vadí NAT. Což je (asi) můj případ a souvisí to s tím, že nemám veřejnou IP adresu internetové přípojky.
Mám optickou přípojku od Cetinu a Internet mi poskytuje O2. Když jsem se po zřízení přípojky zajímal o podrobnosti, tak za veřejnou statickou adresu chtěli měsíčně platit, to ale já nechci.
Existuje nějaká jiná možnost, jak bez veřejné IP adresy z WAN přehrávat hudbu uloženou na NASu Omnie? Třeba nějaký jiný DLNA server, kterému by nevadil NAT? Vím třeba o serverech Plex, nebo Jellyfin. Ty by měli být podobné tomu Emby serveru. Ale nechce se mi naslepo zkoušet různé programy, jestli by bez veřejné IP adresy fungovaly, nebo ne. Nemáte někdo něco vyzkoušené, že to na Omnii funguje a nepotřebuje to veřejnou IP?
Muzete zkusit IPv6, tu by mel mit verejnou kazdy a zadarmo (plati se jen za to, ze je staticka, ale to lze obejit dynamickou DNS). Ale pokud sitovani nerozumite, je to asi bez sance.
K tomu co popisujete potrebujete verejnou IP, a jak rika Peci, IPv6 je jedine spravne a primocare reseni.
Dalsi moznost je zmenit poskytovatele, zrovna o2 je nejvetsi vydriduch siroko daleko, se zcela prumernymi sluzbami a zcela podprumernym pristupem k zakaznikovi. Jini maji (vicemene statickou) IPv6 v cene a nekteri i verejnou IPv4.
A nebo moznost asi nejdrazsi, je pronajmout si VPS (virtualni PC v oblaku) a pripojovat se pres to.
Eventualne pouzit jinou sluzbu, jako Synology nebo Spotify, ale to uz neodpovida zadani…
Do Emby klienta v mobilu jsem zadal IPv6, kterou mi zjistil Seznam.cz, ale klient se serverem v Omnii nespojí. Klient možná podporuje jenom IPv4, protože v příkladu, jak má zápis v kolonce vypadat je jenom IPv4 nebo HTTP adresa.
Asi mi nezbude nic jiného, než za pomoci překladače, zkusit něco zjistit v diskuzním fóru Emby.
Jinak pojem Synology mám spojený se značkou NASů a Spotify s nějakou online službou. Když mám nyní funkční NAS v Omnii, tak moc nechci kupovat další NAS, i když možná ve vzdálenější budoucnosti k tomu nakonec dojde. Spottify jsem nikdy nijak nezkoumal, jen jsem o ní občas někde v nějakém článku četl zmínku. Jestli umožňuje zdarma uložení a přehrávání vlastních hudebních souborů netuším.
NAS … DS Synology umožňuje připojení přes http: //QuickConnect.to/buchtik … najdete to v sekci Externí přístup
a povolíte si ho..
V aplikaci Audio station (DS audio) v mobilu nebo tabletu (Android i Apple) si místo IP 93.91.50.207:5000 zadáte adresu viz výše … u mně je to jen login buchtik pro ten QuickConnect.
IPv6 adresu omnie zjistis na ni, viz treba http://192.168.1.1/cgi-bin/luci/admin/network/network Interfaces > lan > IPv6.
Dale musis povolit prichozi spojeni na firewallu, viz https://forum.turris.cz/t/nastaveni-firewallu-pro-pristup-pouze-ze-site-t-mobile-cz-a-o2-mobile-cz/
Mobil musi mit IPv6 taky, zjistis treba otevrenim http://test-ipv6.cz na mobilu.
Emby neznam, zkus Is possible to access emby remotely using ipv6 ? - General/Windows - Emby Community a podobne. Melo by stacit tam proste zadat tu IPv6 adresu z omnie.
Synology na to ma vestaveny vercajk aby to samo fungovalo i pres NAT, jak pise kolega vyse.
Spotify je zdarma s reklamama, nedavas tam zadne svoje mp3, oni tam skoro vsechno uz maji.
Co takto Wireguard? Potom uz by to malo byt ok.
Jenze i ten wireguard potrebuje nejak vyresit povoleni spojeni zvenci. Podle me to problem prilis nezjednodusi (snad leda v pripade, ze appka neumi IPv6).
Zkusím nastavit ten firewall. Jen se zeptám, abych měl úplně jasno co tam zadat. Do řádku option dest_ip mám zadat lokální IP LXC kontejneru ve kterém běží Emby server? V mém případě je to 192.168.1.153.
Do řádku option dest_port mám zadat port jaký? Emby server má nastavený místní http port 8096 a https port 8920.
V LuCl na stránce Síť v záložce Síťová rozhraní > lan mám dvě IPv6. Obě jsou v nějakém zkráceném formátu, nevím jestli se tak dají zapisovat, aby jim rozuměla třeba ta mobilní aplikace.
Začátek první IPv6 odpovídá tomu co mi zobrazují webové stránky, třeba ta test.ipv6.cz.
Web test-ipv6.cz na mobilu mi IPv6 ukázal. Ukázal i nějakou IPv4. Zároveň mi sdělil, že můj DNS server nemá přístup do IPv6 internetu. Nevím jestli to má na můj případ nějaký vliv. Celkové skóre mám 9/10.
Po přidání všeho co je v příkladu, v tom odkazu na tvůj příspěvek, do konfiguračního souboru přepokládám, že budu muset firewal restartovat? Našel jsem, že se dá restartovat v LuCl na stránce Systém > Po spuštění. Nebo budu muset restartovat celý router?
Aha nevsiml jsem si ze sluzba bezi v kontejneru, takze potrebuje IP adresu toho kontejneru, ne vlastniho interfacu omnie. Adresa to musi byt IPv6, tj neco jako 2001:0db8:85a3:1234:4321:8a2e:0370:7334
, 192.168… je IPv4.
S LXC nemam zkusenosti, no musis tomu pridelit ipv6 a zjistit ji, tu potom povolis na firewallu.
Pro ipv6 nepotrebujes NAT (config redirect) ale povoleni prichozich spojeni, snadnejsi to bude na http://192.168.1.1/cgi-bin/luci/admin/network/firewall/rules nez commandline.
Predpokladam ze mas na mobilu o2 a ipv6 adresa kontejneru je rekneme 2001:0db8:85a3:1234:4321:8a2e:0370:7334
. Uvadim priklad pro sambu bezici na te adrese:
detail:
Pro kontrolu, v /etc/config/firewall
to pak vypada takto:
config rule
option name 'samba6'
option target 'ACCEPT'
option family 'ipv6'
option src 'wan'
option dest 'lan'
list src_ip '2a00:102a:4000::/34'
list dest_ip '2001:0db8:85a3:1234:4321:8a2e:0370:7334'
option dest_port '445'
Pozn. kdyz to jde je lepsi pouzivat zkracene adresy, jako 2001:0db8:85a3:1234::1
ale to uz je dalsi story…
Kontejner zřejmě IPv6 adresy má. Přikládám výpis po zadání příkazu lxc-ls -f
. Na jméno kontejneru moc nekoukej, jeho původní účel je běh programu zpracovávajícího data z meteostanice
Adresy jsem kvůli zveřejnění pro jistotu trochu změnil.
root@turris:~# lxc-ls -f
NAME STATE AUTOSTART GROUPS IPV4 IPV6 UNPRIVILEGED
Meteoserver RUNNING 0 - 192.168.1.153 2a00:1028:83c6:1234:4321:26ff:blb3:7978, fddf:cc01:a6bd:0:1234:4321:blb3:7978 false
root@turris:~#
Mobil mám u O2, takže bych teď měl v nastavení firewallu vytvořit podobné nastavení jako v tvém příkladu, a vyzkoušet některou z těch IPv6 adres?
Je jedno co napíšu do kolonky “Jméno”? Třeba “LXC kontejner”, může být?
A ten port by měl být pro http (8096), nebo raději pro https (8920)? Nebo tam půjdou přidat oba?
Jako, asi se ptám hodně blbě. Ale než abych pak něco složitě opravoval, nebo musel uvést router do továrního nastavení a všechno znova nastavovat, tak se raději 10x zeptám a budu za blbce.
A jsem moc rád, že je tu někdo, kdo se mi snaží pomoci.
EDIT:
Ještě bych se zeptal, jakou zdrojovou adresu bych měl nastavit. Stejnou, jako v tvém příkladu? Nebo některou co je mi nabízena po rozkliknutí políčka? Je jich tam na výběr asi 50.
Ano, zdroj 2a00:102a:4000::/34
odpovida o2, podle mych zkusenosti. Muzes si overit jestli tvuj mobil ma adresu v rozsahu mezi 2a00:102a:4000:0000:0000:0000:0000:0000
a 2a00:102a:7fff:ffff:ffff:ffff:ffff:ffff
, me treba ted ukazuje 2a00:102a:401a:d5e9:5c2d:78c:294a:2415
coz je v rozsahu, kazdopadne adresa se meni kazdou chvili, ale to nicemu nevadi.
Adresu kontejneru vzdyckly pouzij tu co zacina 2, to je verejna, ta co zacina f je jen lokalni.
Port zalezi na jakym nasloucha ten server, pokud je to 8096 a 8920 tak zkus dat oba, nebo jeden pak druhej, uvidis co zafunguje.
Tak by to melo vypadat asi takle (nemam ted pristup k omnii takze jen text, nevim z hlavy jak restartovat firewall kdyz editujes /etc/config/firewall, ale staci kdyz pak na te strance Firewall Rules das F5 aby se nacetly zmeny a pak neco zmenis a das ulozit, treba neco disabluj, uloz, enabluj, uloz)
config rule
option name 'cokoliv_tady_http'
option target 'ACCEPT'
option family 'ipv6'
option src 'wan'
option dest 'lan'
list src_ip '2a00:102a:4000::/34'
list dest_ip '2a00:1028:83c6:1234:4321:26ff:blb3:7978'
option dest_port '8096'
config rule
option name 'cokoliv_tady_https'
option target 'ACCEPT'
option family 'ipv6'
option src 'wan'
option dest 'lan'
list src_ip '2a00:102a:4000::/34'
list dest_ip '2a00:1028:83c6:1234:4321:26ff:blb3:7978'
option dest_port '8920'
No kdyby to furt neslo, tak abys mohl vyzkousel jestli jsou porty otevrene a funkcni, tak docasne odstran radek list src_ip ‘2a00:102a:4000::/34’ (tim se otevres do sveta) a vyzkousej to z nejakeho online testeru, treba Online Port Scanner IPv6 - SubnetOnline.com kde vlozis svou ipv6 a port serveru.
Tak bohužel, stále bez úspěchu.
Provedl jsem kontrolu, zda je můj telefon v rozsahu IPv6, jak píšeš a v uvedeném rozsahu je. Mě ukazuje 2a00:102a:4007:ede3:
atd.
Následně jsem tedy v LuCl provedl nastavení pravidel firewallu, podle tvého vzoru, klepl na tlačítko “Uložit & použít” tím došlo k restartu firewallu a aplikaci upraveného konfiguračního souboru. Do konfiguračního souboru se uložilo toto:
config rule
option dest_port '8096'
option src 'wan'
list src_ip '2a00:102a:4000::/34'
option family 'ipv6'
list dest_ip '2a00:1028:83c6:1234:4321:26ff:blb3:7978'
option target 'ACCEPT'
option dest 'lan'
option name 'Emby server HTTP'
config rule
option dest_port '8920'
option src 'wan'
option name 'Emby server HTTPS'
list src_ip '2a00:102a:4000::/34'
option family 'ipv6'
list dest_ip '2a00:1028:83c6:1234:4321:26ff:blb3:7978'
option target 'ACCEPT'
option dest 'lan'
IPv6 kontejneru jsem opět kvůli zveřejnění změnil, ale ve skutečnosti jsem zadal adresu v podobě jakou mi vypsal příkazlxc-ls -f
. Řádky se uložily v jiném pořadí, než jak je máš ty, ale to by snad nemělo vadit, nebo to vadí?
Poté jsem se zkusil z mobilu spojit se serverem. Ke spojení bohužel nedošlo.
Tak jsem provedl kontrolu portů Online Port Scannerem a kontrola skončila neúspěšně s chybou 111 (111 = Připojení odmítnuto).
Dále jsem tedy odstranil řádky list src_ip ‘2a00:102a:4000::/34
z konfigu, uložil a restartoval firewall a provedl opět kontrolu dostupnosti portů. Ta dopadla opět neúspěšně:
Z mého PC v LAN se prohlížečem přes port 8096 do serveru dostanu, přes port 8920, který je v serveru určen pro HTTPS spojení se z LAN nedostanu. Prohlížeč píše, že stránka je nedostupná.
V nastavení serveru mám povolena vzdálená připojení a povolené automatické mapování portů. U mapování portů je vysvětlivka: “Pokusit se automaticky namapovat veřejný port na místní port prostřednictvím UPnP. Nemusí fungovat s některými modely routeru.”
Nevím, nemůže třeba to povolené mapování portů dělat takové problémy?
- na poradi radku nezalezi
- UPNP bych uplne vypnul, jinak kdejaka appka muze menit nastaveni a delat v tom bordel. A myslim ze pro IPv6 se to vubec nepouziva.
- Nevim jak funguje sit LXC, jestli je to jako virtualni server a ma to svoji virtualni sitovou kartu s vlastnim nastavenim IP adres a vlastniho firewallu nebo jak. Predpokladam ze spojeni PC > LXC by melo fungovat bez ohledu na nastaveni firewallu na omnii protoze to je prime spojeni, tak zalezi jen na nastaveni v tom kontejneru. Jestli to nefunguje lokalne tak zatim nema smysl resit to ven. Staci k funkci ze funguje http nebo to potrebuje obe? Kazdopadne to znamena za na 8920 ten server neposloucha nebo ho blokuje nejaky firewall v tom kontejneru.
- Snad poradi nekdo znalejsi, bo jinak fakt nevim
Vypadá to, že s tím dál nehnu. Ani s vypnutým automatickým mapováním portů v nastavení serveru se klient v mobilu se serverem nespojí.
Já mám ještě míň znalostí, než ty. Všechno jsem instaloval a nastavoval podle nějakých návodů. A o IPv6 vím také velké kulové.
Myslím, že LXC kontejner nevyužívá nějaký vlastní firewall, nebo síťovku. Ale jistý si tím nejsem, takhle podrobně jsem to nestudoval.
Ale udělal jsem malý pokus. Do OS v kontejneru jsem kdysi nainstaloval webserver a ten naslouchá na portu 80 a poskytuje webovou stránku. Provedl jsem tedy stejná nastavení firewallu, jako pro Emby server, jenom jsem změnil port na 80. S konfiguračním souborem s odstraněným řádkem list src_ip
je port 80 pro Online Port Scanner otevřený.
S přítomným řádkem list src_ip 2a00:102a:4000::/34
je zavřený, což chápu jako že je správně, protože Online Port Scanner nepřistupuje z rozsahu IPv6 adres patřících O2. Takže to nastavení ve firewallu považuji za funkční.
Chtěl jsem se tedy z mobilu podívat na ten web v LXC kontejneru, který je z lan přes IPv4 normálně dostupný. A tady u mně asi nastává problém, že nevím jak správně zapsat IPv6 do prohlížeče Chrome v mobilu.
Nadatloval jsem pracně celou IPv6 do adresního řádku Chromu a myslel jsem, že mi ukáže tu webovou stránku, ale stránku mi neukázal a místo toho mi ukazuje nějaké výsledky hledání v Internetu. Neukáže mi jí ani s odstraněným řádkem list src_ip
v konfiguračním souboru firewallu a portem 80 volně přístupným z celého Internetu (jestli to tak chápu správně).
Prostě nevím, jak se z WAN přes IPv6 dostat z Chromu v mobilu na webovou stránku běžící v LXC kontejneru, která by podle Online Port Scanneru měla být dostupná, minimálně v případě, kdy ve firewallu není nijak omezená zdrojová IP. Nebo to, že je port pro Online Port Scanner otevřený, ještě neznamená, že je dostupný pro Chrome v mobilu?
EDIT:
Tak už jsem zjistil, že IPv6 musí být v adresním řádku uzavřená v hranatých závorkách, jinak jí prohlížeč nemusí interpretovat správně.
Nakonec jsem se tedy z mobilu ve WAN na webovou stránku v LXC kontejneru dostal. Ale ten zápis dlouhé IPv6 na dotykové obrazovce mobilu a aby člověk neudělal chybu, to je tedy dost na prd.
Takže teď mám ověřeno, že nastavení ve firewallu (IP adres a toho ostatního) pro port 80 je opravdu funkční a je možné se z mého mobilu ve WAN, přes IPV6, dostat na určitý port v LXC kontejneru. Proč to ale nejde pro Emby server nevím. Proč to nefunguje alespoň pro port 8096, který je dostupný z LAN?
EDIT 2:
Když tak nad tím přemýšlím, tak když teď mám ověřeno, že můžu do LXC kontejneru přistupovat přes IPv6, tak si myslím že bych snad ani DLNA server nepotřeboval. Nejde mi o nějaké překódování video souborů, jde mi hlavně o to, abych se dostal, když budu mimo domov, z mobilu k hudebním souborům, které mám doma v NASu Omnie. A díval jsem se co je to ten výše zmíněný WireGuard, je to VPN přes kterou bych měl mít ještě více bezpečný přístup do domácí LAN.
Jdu zjistit, jestli bych to dokázal v Omnii a v mobilu zprovoznit.
Vypisování dlouhé IP se dá řešit před dns, jako noip.com , duckdns.org apod, kde si vytvoříš název a k tomu zapises tu IPv6, takže pak se domů dostaneš přes například pepik1.noip.com, je to zdarma.
Jinak AI radí ChatGPT - Přehrávání MP3 přes IPv6
Zkusil bych Plex.
Anebo to vem z druhého konce, nahraj MP3 na velkou micro SD kartu do mobilu
Vopred sa ospravedlnujem ze som to tu, kvoli nedostatku volneho casu, cele do podrobna necital. Kazdopadne, mne doma bezi NAS na Omnii cez Sambu a ked sa z vonku pripojim cez Wireguard dostanem sa aj do NAS (VLC, Total commander,…).
Samozrejme, je vhodne mat nastavene Duckdns alebo inu podobnu sluzbu.
Tu su pomerne jednoduche navody na nastavenie wireguardu:
A tento panko ich vie podat aj v ludskej reci:
Akurat dodam, ze na telefone, aj po naskenovani QR kodu wireguard nastaveni z Omnie, je potrebne dopisat spravne cislo portu (alebo take nieco, teraz si neviem spomenut) aby spojenie fungovalo.
Co sa tyka samostatnej poziadavky, tak mi pride daleko vyhodnejsie (energeticky aj datovo) pouzit riesenie, kedy si hudbu skopirujes do telefonu alebo na micro SD kartu. V takomto pripade nie si odkazany na signal wifi alebo mobilneho operatora.
Ale tak ja som stara skola a stale pouzivam klasicky mp3 prehravac a nemozem si to vynachvalit
Tak chlapi, včera večer jsem se ještě díval na ten WireGuard, ale asi bych to nastavení nedal.
Ale ještě jsem se nechtěl vzdát, tak jsem dnes dopoledne do kontejneru nainstaloval Jellyfin server, což je v podstatě to samé jako Emby server. Také to úplně stejně dopadlo, nedalo se do serveru dostat z WAN. Tak jsem si vzal na pomoc Kopilota v prohlížeči Edge a spolu jsme to celé dopoledne řešili, až jsme to vyřešily. Jellyfin server mám přístupný přes IPv6 jak z prohlížeče v mobilu, tak i z Android Jellyfin klienta. Problém byl nejspíš v tom, že Jellyfin (a pravděpodobně i Emby) v základní konfiguraci není připravený ke spojení přes IPv6. Musel jsem v jeho síťovém konfiguračním souboru doplnit jeden řádek a ještě v jiném řádku zapnout naslouchání přes IPv6. Ve výchozím stavu bylo naslouchání přes IPv6 vypnuté. Ale nejsem si jist úplně na beton, že pomohla pouze tato změna nastavení, protože jsem postupně kontroloval a upravoval různé konfigurační soubory, tak jak mi radil Kopilot. Všechno většinou v příkazovém řádku a to jak v Turris OS, tak v LXC kontejneru a bylo toho tolik, že jsem postupně ztratil přehled.
Musím tedy říct, že Kopilot v Edge je užitečný a docela schopný. A možná bych s jeho pomocí byl schopný nastavit i ten WireGuard, ale s tím jak mi to teď funguje jsem zatím spokojený.
Jo tak se člověk nejvíc naučí… Tak ať to dobře slouží
Jen pro zajímavost, to nastavení firewallu, funguje to s tím config rule jak jsem psal?
Ano, funguje to s nastavením co jsi napsal, tzn. s tebou zjištěným rozsahem IPv6 adres O2 a zbytkem nastavení a mnou zjištěnou IPv6 adresou LXC kontejneru.
Nakonec ještě jednou moc děkuji za pomoc a podělení se o informace.