Nos, hogyan is sikerült mindezt életrelehelni, és még milyen lehetőségeket rejt?
Nulladik lépésben ip címet kell szerezni. ezt tehetjük kézi pi osztással, DHCP-vel, de ezek nem igazán 0konf megoldások. Az teljesen autómata megloldás az ún. link-local ip adress beszerzése. Ez az ipv4 protokoll címterében a 169.254.0.0/16 szubnetben található ip-k összessége. Ilyen címet például a NetworkManager ( http://www.gnome.org/projects/NetworkManager/ cikk róla:
http://www.redhat.com/magazine/003jan05/features/networkmanager/ ) tud szerezni, de jó erre még a parancssori zcip vagy zeroconf programok valamelyike is. (ezekből pl fc5-höz nincs csomag)
Ezután először is kellett az mDNS adatokat feldolgozó szolgáltatás, ami az általam preferált disztriúcióban, a Fedora Core (5) -ban/ben az Avahi nevű démon által történik. Ez jó választás, mivel már szinte mindent tud, amit az Apple implementációja, és az utolsó hiányzó funkciók épp mostanág kerülnek beépítésre, ráadásul API és ABI kompatibilis az Apple mDNS (bonjour a Mac-en) megoldásval, valamint a Howl -al (másik implementáció) és mindezt teszi GPL licensz mellett. A csomag a disztribúció alap csomagjai közé tartozik, beszerezni a következő helyen lehet:
http://download.fedora.redhat.com/pub/fedora/linux/core/5/i386/os
És ugyanzen a szerveren itt található a forrás rpm is:
http://download.fedora.redhat.com/pub/fedora/linux/core/5/source/SRPMS
A projeckt homepage pedig: www.avahi.org
A specfilet külön nem mellékelem, ha nem fontos, remélem Oregon ezt elnézi most az egyszer nekem. Persze ha nagyon kéne... akkor majd kibányászom.
Tehát, miután a csomag felment a gépre, és a szolgáltatás fut, a hálózaton elérhető erőforrásokat az avahi-tools csomag részeként megtalálható avahi-discover paranccsal megnézhetjük. Hostnév és ip feoldást kézzel az avahi-resolve paranccsal végezhetünk, programajink számára azonban nem működik mindez átlátszóan (illetve a GLib-eseknek talán, de sima glibc-seknek nem)
Ezután a névfeloldást lehetővé tenni a .local. TLD-ben (ugyanis az ilyen hálózaton levő gépek ebbe jegyzik be auk, így sem az interneten működő DNS-t nem zavarva össze, és mégis rendelkezve saját névtérrel. Ehhez a Name Service Switc szolgáltatásba kell beépíteni egy modult, mellyel lehetővé válik a hagyományos glibc-re alapuló programok, pl ssh számára is s név és ip feloldás. Ehhez az nss-mdns csomagot kell telpíteni, ami fedorához alapból nincs, de én csináltam egy fapados kis rpm-et, majd be kell azt konfigurálni. A konfigurációra a program leírása valamint a következő fórumcikk ad útmutatást. (1 sort kell szerkesztni a /etc/nsswitch.conf-ban.) link: http://hup.hu/node/28840
A névefoldás működéséhez tehát az avahinak futnia kell!!!
A beálítások teszteléséhez NE AZ nslookup -ot HASZNÁLJUK!!! A köv módon lehet tesztelni:
getent hosts gépnév.local.
És a mágia működésbe lép :)
Ha mindezzel elégedettek vagyunk, akkor könnyen vérszemet kaphatunk :) Tegyük is meg, hiszem miért kéne nekünk az avahi-discovert bújni, majd terminálban pötyögni, hoy valakinek az gépéhez ssh-val csatizzunk? Ezt hivatott megoldani a service-discovery-applet. Ezt telepítve (ill fedorán leforgatva) a GNOME desktopon agy appletből néhány kattintással használatba vehetjük a hálózati erőforrásokat.
A csomagokat, illetve a forrásaik, specfile-jaik itt találhatjátok meg:
http://enkidu.elte.hu/~ggergely/RPMS/
http://enkidu.elte.hu/~ggergely/SRPMS/
http://enkidu.elte.hu/~ggergely/SPECS/
A zeroconf hóvtóm most itt végetér, de folytani fogom nemsokára:
Most a webdav, és ftpd beállítása jön, majd az avahi beállítása ezek reklámozására. Ez még csak egy "csonk", mert ide egy (többé-kevésbé) rendes howtot fogok írni a saját magam, és mások okulására. 1 héten belül ttira kész lesz. Azért írtam már most ide ezt, hogy inspirájam magam.
Ja, és várom a gaim2-beta3-hoz az avahi kompatibilis (nem csak a régi howl-lal, vagy apple mDNS-sel barát) bonjout plugint, vagy a tanácsokat, hogyan leheljem életre őket az avahi kompatibilitási rétegén keresztül.
Ja, és majd zeroconf és zcip rpm-eket is fogok csinálni, hogy ne csak NetworkManager-en keresztül lehessen link-local ip-ket kapni, hanem scriptből is.
Most ennyi... de ahogyan Arnie barátom mondaná: " I'll be back!" ;)
- Névtelen blogja
- A hozzászóláshoz be kell jelentkezni
- 1279 megtekintés
Hozzászólások
spec fajlt elkerhetem?
jo ide is bevagva.
azt hiszem neki allok az uhu csomagnak es a kdenetwork ujracsomagolasnak.
- A hozzászóláshoz be kell jelentkezni
Melyiké?
Amúgy minden csomagot, és src-rpm-et, meg specfilet külön is, ki fogok rakni a sulis webcímemre.
Csak legyenek kész. És a saját "success story"-mat is (ahogy a marketinges barátaink mondanák) mellékelni fogom. Egy hóvto képében. Még a héten (izé, köz 7 napon belül). Csak mozgalmas lesz a 7végém..
- A hozzászóláshoz be kell jelentkezni
amelyik kell a megvalositashoz. mert akkor latom a fuggoseget es gyorsabban eltudom en is kesziteni uhu ala.
orok halam majd a linkert.
- A hozzászóláshoz be kell jelentkezni
szerkesztéssel beraktam az adatokat.
Amúgy uhu package managerje nem dpkg-ból lett kifejlesztve? Hogy működik, dóhélyban?
- A hozzászóláshoz be kell jelentkezni
de igen. van sajat buildje ami igazabol shell scriptek. a te spec fajlodba szamomra az ertekes infok:
lelohely,
fuggosegek,
forditasi parameterek
- A hozzászóláshoz be kell jelentkezni
csak nss-mdns csomagot keszitettel?
mdns-scan csomag nem kell ahhoz, hogy bongeszni tudd a halozatot?
- A hozzászóláshoz be kell jelentkezni
kozben en is elkeszitettem magam csomagjait uhu ala, konkretan:
nss-mdns
es
mdns-scan
faszan parancssorbol mar latom a halozatot (bonjour?). most szepen a kde ala kell behegesztenem (rebuild kdelibs,kdenetwork,kdegames) es akkor ott is hasznalhatova valik elvileg.
- A hozzászóláshoz be kell jelentkezni
bonjour barat:
oregon:~$ mdns-scan
+ Brother HL-2700CN series._http._tcp.local
+ AXIS 207 - 00408C753A50._http._tcp.local
+ AXIS 207W - 00408C75D857._http._tcp.local
+ AXIS 207W - 00408C70ECED._http._tcp.local
+ AXIS 207W - 00408C70ECED._axis-video._tcp.local
+ AXIS 207W - 00408C70ECED._rtsp._tcp.local
+ AXIS 206W - 6814CF._http._tcp.local
+ AXIS 207W - 00408C75D839._http._tcp.local
+ AXIS 207W - 00408C70ED05._http._tcp.local
+ AXIS 207W - 00408C70EF07._http._tcp.local
+ AXIS 207W - 00408C75D84D._http._tcp.local
+ AXIS 207W - 00408C75D843._http._tcp.local
+ AXIS 207W - 00408C75D843._axis-video._tcp.local
+ AXIS 207W - 00408C75D843._rtsp._tcp.local
Browsing ... -
- A hozzászóláshoz be kell jelentkezni
én nem bonjour/mDNS/HOWL, hanem avahi backenddel használom (a blogba beleszerkesztettem az infóket, hogyan), és a függőségeket az rpm jól kitölti, tehát azt a specfilejaimból sajna nem nagyon tudod kivenni... Ja, és erősen malrózott a fedora rpmbildje, én szeretem így használni, mivel 99%-ban jól megy kb ugyanilyen egyszerű specfile-al. majd a buildrequeres-öt kitöltöm következő körben.
- A hozzászóláshoz be kell jelentkezni
nem fordult nalam le az avahi. qt-mt kell neki, ami nekem nincs,. keszotettem uj qt csoamgot. most fogom tesztelni. aztan utana nezek ennek a qt-mt-nek, aztan tudok neki asni az avahi-nak. es ha mind ez kesz, akkor johet a kde rebuild, mert annak meg kell az avahi.
lasd:
http://wiki.kde.org/tiki-index.php?page=Zeroconf+in+KDE#Default_impleme…
- A hozzászóláshoz be kell jelentkezni
Nem tudom, te hogyan tetted fel a NetworkMAnagert, nekem sehogy se akar leforogni (Gentoo Linux). Fent van minden neki, csak a dhcdb vagy mi a fene nincs, de állandóan elhasal. Teszek majd fel logokat, most spec nem tudok. Ezzel együtt kellene valami howto, hogy hogyan fordítsam le. A GCC-m 3.4.6 verziós.
Előre is kösz az ötleteket.
Hrgy84
- A hozzászóláshoz be kell jelentkezni
nekem fedrában alap csomag, mivel redhat kezdte a progit fejleszteni, ezért mi szeressük :)
Amúgy nálunk minden gcc 4.1-el van, és a dhcbd (vagy hogy van) az kell neki, mivel az egy d-bus-szal távvezérelhető, és a networkmanager azon át kommunikál a különböző komponenseivel (pl ez a dhcp démon, az nm-magja, illetve a felhasználói interfész.)
kb ennyi tudok mondani. iletve ha érdekel, a függőségeit (rpm adatbázisból) ide tudom másolni neked. Szerintem megéri a harcot, mert jó kis progi.
- A hozzászóláshoz be kell jelentkezni