abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 10:50 | Zajímavý software

Mozilla.cz informuje o dvou nových experimentálních funkcích v programu Firefox Test Pilot (zprávička). Snooze Tabs slouží k odkládání panelů na později. Pokud vám někdo pošle odkaz, ale vy nemáte čas si stránku hned přečíst, můžete si naplánovat otevření panelu na později. Stačí kliknout na tlačítko a vybrat, kdy chcete panel otevřít. Firefox panel schová a ve vybraný čas znovu otevře. Pulse umožňuje ohodnotit, jak dobře stránka funguje, např. jak rychle se ve Firefoxu načetla. Podle nasbíraných hodnocení pak bude Mozilla prohlížeč ladit.

Ladislav Hagara | Komentářů: 1
dnes 02:00 | IT novinky

V Barceloně probíhá veletrh Mobile World Congress 2017. Nokia na něm například představila (360° video na YouTube) novou Nokii 3310 (YouTube). BlackBerry představilo BlackBerry KEYone (YouTube) s QWERTY klávesnicí. LG představilo LG G6 (YouTube). Huawei HUAWEI P10 a P10 Plus. Samsung představil tablet Galaxy Tab S3.

Ladislav Hagara | Komentářů: 0
včera 14:00 | Nová verze

Komunita kolem Linuxu From Scratch (LFS) vydala Linux Linux From Scratch 8.0 a Linux From Scratch 8.0 se systemd. Nové verze knih s návody na instalaci vlastního linuxového systému ze zdrojových kódů přichází především s Glibc 2.25 a GCC 6.3.0. Současně bylo oznámeno vydání verze 8.0 knih Beyond Linux From Scratch (BLFS) a Beyond Linux From Scratch se systemd.

Ladislav Hagara | Komentářů: 0
včera 11:11 | Nová verze

Byla vydána verze 0.10.0 webového prohlížeče qutebrowser (Wikipedie). Přehled novinek v příspěvku na blogu. Vývojáři qutebrowseru kladou důraz na ovladatelnost pomocí klávesnice a minimální GUI. Inspirovali se prohlížečem dwb a rozšířeními pro Firefox Vimperator a Pentadactyl. Prohlížeč qutebrowser je naprogramován v Pythonu a využívá PyQt5. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GNU GPL 3.

Ladislav Hagara | Komentářů: 21
25.2. 16:22 | Nová verze

Po pěti měsících od vydání Waylandu a Westonu 1.12.0 oznámil Bryce Harrington (Samsung) vydání Waylandu 1.13.0 a Westonu 2.0.0.

Ladislav Hagara | Komentářů: 3
24.2. 13:37 | Bezpečnostní upozornění

Společnost Cloudflare (Wikipedie) na svém blogu potvrdila bezpečnostní problém s její službou. V požadovaných odpovědích od reverzní proxy byla odesílána také data z neinicializované paměti. Útočník tak mohl získat cookies, autentizační tokeny, data posílaná přes HTTP POST a další citlivé informace. Jednalo se o chybu v parsování HTML. Zneužitelná byla od 22. září 2016 do 18. února 2017. Seznam webů, kterých se bezpečnostní problém potenciálně týká na GitHubu.

Ladislav Hagara | Komentářů: 1
24.2. 08:22 | Nová verze

Byla vydána první beta verze Ubuntu 17.04 s kódovým názvem Zesty Zapus. Ke stažení jsou obrazy Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu GNOME, Ubuntu Kylin, Ubuntu Studio a Xubuntu. Dle plánu by Ubuntu 17.04 mělo vyjít 13. dubna 2017.

Ladislav Hagara | Komentářů: 56
23.2. 17:53 | Bezpečnostní upozornění

Google na svém blogu věnovaném počítačové bezpečnost informuje o nalezení "reálného" způsobu generování kolizí hašovací funkce SHA-1. Podrobnosti a zdrojové kódy budou zveřejněny do 90 dnů. Již dnes lze ale na stránce SHAttered nalézt 2 pdf soubory, jejichž obsah se liší a SHA-1 otisk je stejný (infografika).

Ladislav Hagara | Komentářů: 41
23.2. 17:51 | Nová verze

Vyšla nová verzia open source software na správu a automatizáciu cloudových datacentier Danube Cloud 2.4. Danube Cloud je riešenie postavené na SmartOS, ZFS, KVM a zónach. Obsahuje vlastnosti ako integrovaný monitoring, DNS manažment, zálohy, a samozrejme rozsiahlu dokumentáciu.

dano | Komentářů: 15
23.2. 17:46 | Pozvánky

V Plzni se 3. až 5. března 2017 uskuteční AIMTEChackathon. Je to akce pro vývojáře, grafiky, webdesignéry i veřejnost. Akci provází zajímavé přednášky IT odborníků. Více o programu a možnosti přihlášení na stránkách akce.

cuba | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 724 hlasů
 Komentářů: 68, poslední dnes 07:29
    Rozcestník

    Dotaz: [C] ICMPv6

    11.10.2012 09:16 Tomasko | skóre: 4
    [C] ICMPv6
    Přečteno: 492×
    Dobrý den.

    veděl by někdo jak se dostat z příchozího IPv6 paketu na ICMPv6 hlavicku? Potřebuju zjistit TYPE a CODE z ICMPv6.

    Celý IPv6 paket příjmu: recvLength = recvfrom(sockfd, recvBuf, BUF_SIZE, 0,(struct sockaddr *)&receiveSock6, &SockLength);

    a ted bych chtěl přistoupit k ...->TYPE a ...->CODE v icmp6_hdr

    pro hlavicku ICMPv6 tedy používám: struct icmp6_hdr

    Děkuji

    Řešení dotazu:


    Odpovědi

    11.10.2012 12:59 Tomasko | skóre: 4
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Vyřešeno. Paket přichází bez IPv6 hlavičky. Takže ořezání není potřeba.
    pavlix avatar 11.10.2012 17:55 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Nejlepší je, že jsi v dotazu neuvedl dostatek informací, takže vůbec nebylo zřejmé, jestli si systému říkáš o paket bez hlavičky nebo s ní.
    13.10.2012 13:19 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Ono vubec nejak jde na IPv6 si zadat o paket s (IPv6) hlavickou? Standardni je urcite bez hlavicky a kdyz tak koukam na RFC 3542, tak tam ani socket option pro predani cele hlavicky nenachazim.
    pavlix avatar 14.10.2012 16:02 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Ono vubec nejak jde na IPv6 si zadat o paket s (IPv6) hlavickou?
    Ale u IPv4 to šlo jednodušeji, že? Jestli to tedy správně chápu, tak autoři RFC 3542 se rozhodli vůbec nezahrnout funkcionalitu, která byla u IPv4 běžně dostupná, s odůvodněním, že už není potřeba. Zdůvodnění v tom RFC vypadá jako špatný vtip. Definice, že IPPROTO_RAW nemá u IPv6 speciální význam je podle mě vyloženě sabotáž, protože brání kompatibilnímu dodatečnému zavedené této funkce.

    Z některých RFC posledního desetiletí vyloženě rostu. Perličky se najdou i v těch starších, ale tohle na mě působí jako výsměch.
    14.10.2012 16:20 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Ja na to mam opacny nazor - situace na IPv4 je hrozny bordel. Obecne kompatibilni rozsireni udelat neslo uz jenom proto, ze spousta veci v IPv4 je na Linuxu i BSD resena odlisne. Konkretne to, ze raw IP sockety predavaji pakety bez IP hlavicky, mi prijde vcelku konzistentni - UDP sockety take predavaji pakety bez UDP hlabicky. S IPv6 se o dost lepe programuje, protoze je rozhrani dobre specifikovane (prave tim RFC 3542), oproti IPv4, kde se lisi i mezi major verzema Linuxu a mezi jednotlivyva branchema BSD.
    pavlix avatar 14.10.2012 19:20 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Ja na to mam opacny nazor
    Dávám přednost tomu, když lidé do komentáře napíší na co přesně mají opačný názor než já. Alespoň jim mám pak šanci dojem o opačnosti názorů vyvrátit.
    situace na IPv4 je hrozny bordel. Obecne kompatibilni rozsireni udelat neslo uz jenom proto, ze spousta veci v IPv4 je na Linuxu i BSD resena odlisne. Konkretne to, ze raw IP sockety predavaji pakety bez IP hlavicky, mi prijde vcelku konzistentni - UDP sockety take predavaji pakety bez UDP hlabicky. S IPv6 se o dost lepe programuje, protoze je rozhrani dobre specifikovane (prave tim RFC 3542), oproti IPv4, kde se lisi i mezi major verzema Linuxu a mezi jednotlivyva branchema BSD.
    Tím považuju opačnost názoru za vyvrácenou.
    14.10.2012 19:45 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Dávám přednost tomu, když lidé do komentáře napíší na co přesně mají opačný názor než já.

    Na smysluplnost snahy zachovat obskurni rysy IPPROTO_RAW z IPv4 i pro IPv6. V tomhle ohledu souhlasim s autory RFC 3542.
    pavlix avatar 14.10.2012 21:48 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Na smysluplnost snahy zachovat obskurni rysy IPPROTO_RAW z IPv4 i pro IPv6.
    Na tuto konkrétní věc nemám žádný vyhranění názor, tedy těžko můžeš mít názor opačný. Obecně jsem toho názoru, že pro vytváření nekopatibilního API pro protokol, který je náhradou, by měl být dobrý důvod a neměl by být tajný.

    Mým názorem je, že je odstraňování používané funkcionality a vytváření nekompatibilního API bez řádného zdůvodnění a doporučení implementátorům a uživatelům je špatně. Takže můžeš mít opačný názor v následujících věcech:

    1) Můžeš si myslet, že odstranění funkcionality a vytvoření nekonzistence bez řádného vysvětlení je v RFC definujícím rozšíření stávajícího API na nový protokol je správné.

    2) Můžeš si myslet, že vysvětlení v RFC, které z mého pohledu víceméně zní „už není potřeba“, je dostatečné a v pořádku.

    Já bych třeba čistě teoreticky viděl v Linuxu jako alternativu AF_PACKET, ale nikdy jsem s tím nepracoval a oni se v tom popisu ani neobtěžovali s napsáním, že na příjem paketů doporučují samostatnou packet family. Pokud by AF_PACKET měla být správnou náhradou pro IPv4, tak bych to doporučení viděl společné pro IPv4 a IPv6.

    Nebo je snad nekonzistence mezi IPv4 a IPv6 v tak mnoha oblastech účelem sama o sobě? Já měl vždycky za to, že všechny změny mezi IPv4 a IPv6 jsou dělány v dobré víře a za nějakým účelem.
    14.10.2012 23:16 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    1) Vzhledem k tomu, ze na IPv4 tyto veci nebyly nikdy kloudne standardizovany a jsou odlisne mezi BSD a Linuxem, tak nekonzistence tu tak jako tak bude. Zaneseni dalsi je tedy mensi nevyhoda, kdyz to prinese jine vyhody (elegantnejsi rozhrani - stavajici IPPROTO_RAW rozhrani pro IPv4 je hrozny bastl).

    2) S vysvetlenim v RFC vcelku souhlasim. Pro ucely, ke kterym IPPROTO_RAW slouzi, ta funkcionalita neni potreba (a ona v podstate nebyla potreba ani v IPv4 a nejspis je tam jako dusledek historickeho vyvoje - tedy byla potreba predtim, nez se objevily jine elegantnejsi nastroje k dosazeni tehoz, napr IP_PKTINFO).

    AF_PACKET neni alternativa, to je nastroj slouzici k trochu jinemu ucelu nez IPPROTO_RAW.

    Jeste je vhodne zminit, ze kdyz clovek uzpusobuje program pouzivajici IPv4 raw sockety pro IPv6, tak to prizpusobeni da kupodivu mene prace v soucasne situaci (kdy doslo ke zmene) nez v alternativni situaci, kdyby raw socketum zustala presne stejne chovani i pro IPv6.
    pavlix avatar 15.10.2012 00:10 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Zkusme se vrátit k tématu, protože ho nevidím ani v jedné části tvé reakce. Vše začalo tvojí větou:
    Ono vubec nejak jde na IPv6 si zadat o paket s (IPv6) hlavickou?
    Tedy socket(AF_INET, ..., ...) lze použít k příjmu celých IPv4 paketů. Podle tvého tvrzení, podle zmíněného RFC a podle různých zdrojů na webu socket(AF_INET6, ..., ...) k příjmu celých IPv6 paketů použít nelze.
    AF_PACKET neni alternativa, to je nastroj slouzici k trochu jinemu ucelu nez IPPROTO_RAW.
    Jenom aby to nebyl přesně ten účel, o kterém je od začátku řeč. Protože mě na první pohled z dokumentace přijde, že AF_PACKET slouží přesně a právě k získání celých paketů včetně hlavičky, tedy to, o čem byla od začátku řeč. Bylo by docela fajn, kdybys mi to mohl potvrdit nebo vyvrátit.
    Jeste je vhodne zminit, ze kdyz clovek uzpusobuje program pouzivajici IPv4 raw sockety pro IPv6, tak to prizpusobeni da kupodivu mene prace v soucasne situaci (kdy doslo ke zmene) nez v alternativni situaci, kdyby raw socketum zustala presne stejne chovani i pro IPv6.
    A přesně to je to, o čem od začátku mluvím. Že by bylo vhodné, kdyby se autoři RFC vyhybali prázdným větám typu „toto už není potřeba“ ve prospěch skutečné informace o tom co se přesně čím nahrazuje.

    Ale tohle je drobnost oproti tomu, na jakých nesmyslných předpokladech dnešní RFC stojí a software, který se jimi řídí pak nefunguje. A kromě fgont kdesi z Argentiny, který zřejmě taky nemá moc času, se mi zatím nedaří narazit na lidi, kteří by měli zájem spolupracovat.

    Takže se snažím opravit alespoň zlepšovat software navzdory nesmyslným internetovým standardům. Myslím, že jsem tu různě na Abclinuxu tyto informace odkazoval, takže kdybys náhodou narazil na někoho, koho fatální chyby ve standardech zajímají, tak informace klidně zopakuju.
    15.10.2012 20:16 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Tedy socket(AF_INET, ..., ...) lze použít k příjmu celých IPv4 paketů. Podle tvého tvrzení, podle zmíněného RFC a podle různých zdrojů na webu socket(AF_INET6, ..., ...) k příjmu celých IPv6 paketů použít nelze.

    To je pravda. Ale je dobre si uvedomit jaky je smysl predavani te hlavicky. Programy vyuzivajici PF_INET/SOCK_RAW nectou tu hlavicku jen pro hlavicku samou (to mozna nastroje jako tcpdump, ale pro ne je stejne PF_INET/SOCK_RAW nevhodny), ale proto, aby z ni vycetli informace o prichozim packetu (jako zdrojova adresa ci prijate TTL), ktere je zajimaji. To se dela v IPv6 (a koneckoncu to tak jde delat i v IPv4, ale to nejspis zavedli pozdeji nez predavani cele hlavicky) pres ancillary data objects.
    Jenom aby to nebyl přesně ten účel, o kterém je od začátku řeč. Protože mě na první pohled z dokumentace přijde, že AF_PACKET slouží přesně a právě k získání celých paketů včetně hlavičky, tedy to, o čem byla od začátku řeč.
    AF_PACKET hlavne funguje o vrstvu nize, coz ma nektere zajimave dusledky, napriklad to, ze packet doruceny pres PF_INET/SOCK_RAW bude defragmentovany, zatimco AF_PACKET preda jednotlive fragmenty zvlast. Pak se taky uplne jinak filtruje. Takze AF_PACKET rozhodne nelze povazovat za drop-in replacement za PF_INET/SOCK_RAW.
    A přesně to je to, o čem od začátku mluvím. Že by bylo vhodné, kdyby se autoři RFC vyhybali prázdným větám typu „toto už není potřeba“ ve prospěch skutečné informace o tom co se přesně čím nahrazuje.

    Ale ono to tam presne popsane je - nahrazuji to primarne ancillary data objects:
    Another difference from IPv4 raw sockets is that complete packets (that is, IPv6 packets with extension headers) cannot be sent or received using the IPv6 raw sockets API. Instead, ancillary data objects are used to transfer the extension headers and hoplimit information, as described in Section 6. Should an application need access to the complete IPv6 packet, some other technique, such as the datalink interfaces BPF or DLPI, must be used.
    pavlix avatar 17.10.2012 11:57 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    To je pravda. Ale je dobre si uvedomit jaky je smysl predavani te hlavicky. Programy vyuzivajici PF_INET/SOCK_RAW nectou tu hlavicku jen pro hlavicku samou
    To se ale jaksi v žádné dokumentaci nepíše, že.
    to mozna nastroje jako tcpdump, ale pro ne je stejne PF_INET/SOCK_RAW nevhodny
    A to je zase stejný případ. Napíše se, že je něco nevhodné či nepotřebné, ale ani jediný náznak toho, proč.
    To se dela v IPv6 (a koneckoncu to tak jde delat i v IPv4, ale to nejspis zavedli pozdeji nez predavani cele hlavicky) pres ancillary data objects.
    Jojo, to už jsem někde v kódu viděl.
    AF_PACKET hlavne funguje o vrstvu nize, coz ma nektere zajimave dusledky, napriklad to, ze packet doruceny pres PF_INET/SOCK_RAW bude defragmentovany, zatimco AF_PACKET preda jednotlive fragmenty zvlast.
    A kdybych chtěl číst celé pakety po fragmentaci?
    Should an application need access to the complete IPv6 packet, some other technique, such as the datalink interfaces BPF or DLPI, must be used.
    No vida, tohle jsem tam nemohl najít. Ale netrpí tyhle rozhraní stejnou vlastností, že neumí paket sestavit z fragmentů?

    Je fajn, že diskuze nabrala nějaký smysluplný směr. Přesto si myslím, že jedna volba pro čtení celých paketů pri IPv6 by byla zadarmo a ničemu by nevadila.
    17.10.2012 22:01 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    To se ale jaksi v žádné dokumentaci nepíše, že.

    To je ma interpretace toho rozhrani. Samozrejme nemusi byt spravna. Zel na tyhle veci jsou autori dokumenatace vetsinou dost skoupi.
    to mozna nastroje jako tcpdump, ale pro ne je stejne PF_INET/SOCK_RAW nevhodny

    A to je zase stejný případ. Napíše se, že je něco nevhodné či nepotřebné, ale ani jediný náznak toho, proč.
    1) PF_INET/SOCK_RAW socket ti predava jen pakety jednoho konkretniho IP protocolu specifikovaneho pri vytvoreni socketu. Dost omezujici pro tcpdump-like programy.

    2) PF_INET/SOCK_RAW socket ti dava defragmentovane packety, tcpdump-like programy budou chtit ukazat to, co se skutecne deje.

    3) Na FreeBSD udajne nejde PF_INET/SOCK_RAW socket pouzit pro prijimani TCP a UDP paketu.

    4) Nevim, ale dost pochybuju ze by PF_INET/SOCK_RAW socket vracel packety s neodpovidajici dst adresou prijate kvuli tomu, ze iface je promiskuitni.
    A kdybych chtěl číst celé pakety po fragmentaci?

    Mas na to nejaky smysluplny use case?
    No vida, tohle jsem tam nemohl najít. Ale netrpí tyhle rozhraní stejnou vlastností, že neumí paket sestavit z fragmentů?

    Nejspis ano, to je hadam totez jako AF_PACKET.
    17.10.2012 22:08 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    BTW, koukam, ze jsem v nekterych predchozich postech trochu zmatkoval - vsude, kde jsem pouzil 'IPPROTO_RAW', ma byt 'SOCK_RAW'.
    pavlix avatar 17.10.2012 23:18 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Každopádně díky, tohle už mi přijde o něco srozumitelnější. Use case je spíše otázkou pohodlí, jestli chceš ty hodnoty kopírovat jednotlivě. Ale to je detail.

    Nicméně, ono opravdu nejde o to, jak se to chová by default při SOCK_RAW, to se totiž podle mě vůbec nemění. Zajímavější je IP_HDRINCL či IPPROTO_RAW, a to je to, co u IPv6 oproti IPv4 v prvním případě není a v druhém případě má redefinovaný význam.
    17.10.2012 23:29 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: [C] ICMPv6
    Default chovani se meni. Aby bylo jasno:

    IPv4 - vzdy dostanu hlavicku u prichozich paketu, zatimco odchozi pakety predavam defaultne bez hlavicky, s IP_HDRINCL ci IPPROTO_RAW je pak predavam s hlavickou (co s ni OS udela uz neni moc portabilni, nekde ji nemeni a pouzije rovnou, jinde pry jen z ni vytahne nektere udaje a jinak si ji stejne sestavi sam).

    IPv6 - prichozi pakety dostanu bez hlavicky, odchozi pakety predavam take bez hlavicky. Udaje z hlavicky ctu ci nastavuji pres ancillary data objects.

    Tedy IP_HDRINCL a IPPROTO_RAW se tykalo *odchozich* paketu. Defaultni chovani pro IPv4 bylo nekonzistentni pro rx a tx.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.