Číselné sústavy, IPv6, Webové servery a Databázy

Komplexný sprievodca pre študentov k témam číselné sústavy, IPv6, webové servery a databázy. Získajte prehľad a zlepšite svoje vedomosti! Kliknite pre detaily.

Podcast

Základy digitálneho sveta0:00 / 6:35
0:001:00 zostáva

Vitajte v našom komplexnom sprievodcovi, ktorý sa venuje kľúčovým pilierom digitálneho sveta: číselným sústavám, protokolu IPv6, webovým serverom a databázam. Tieto témy sú nevyhnutné pre každého, kto sa zaujíma o fungovanie počítačov, internetu a webových aplikácií. Ponorte sa s nami do rozboru, ktorý vám pomôže pochopiť ich princípy a prepojenia.

Číselné sústavy: Základ digitálneho sveta

Počítače pracujú inak ako ľudia a používajú rôzne číselné sústavy na reprezentáciu údajov. Pre študentov informatiky je nevyhnutné pochopiť ich princípy a prevody.

Binárna, desiatková a hexadecimálna sústava

Tri najdôležitejšie číselné sústavy, s ktorými sa stretávame v informatike, sú:

  • Binárna sústava (základ 2): Používa iba číslice 0 a 1. Je to základný jazyk počítačov a celého digitálneho sveta. Napríklad desiatkové číslo 5 je v binárnej sústave 101.
  • Desiatková sústava (základ 10): Najčastejšie používaná sústava v bežnom živote. Používa číslice 0 – 9.
  • Hexadecimálna sústava (základ 16): Využíva číslice 0–9 a písmená A–F. Často sa používa pri zápise MAC adries, farieb (napr. v CSS) alebo adries v pamäti.

Prevody medzi číselnými sústavami: Príklady a metódy

Schopnosť prevádzať čísla medzi sústavami je kľúčová. Pozrime sa na konkrétne metódy:

Prevod desiatková → binárna sústava

Delíme číslo základom 2 a zapisujeme zvyšky v opačnom poradí. Napríklad prevod 13 (DEC):

DelenieZvyšok
13 ÷ 2 = 61
6 ÷ 2 = 30
3 ÷ 2 = 11
1 ÷ 2 = 01

Výsledok je 1101 (BIN).

Prevod binárna → desiatková sústava

Každú binárnu číslicu vynásobíme príslušnou mocninou základu 2 a sčítame. Prevod 1101 (BIN):

  • 1×2³ + 1×2² + 0×2¹ + 1×2⁰ = 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13 (DEC).

Prevod desiatková → hexadecimálna sústava

Postup je podobný ako pri binárnej sústave, delíme základom 16. Prevod 254 (DEC):

DelenieZvyšok
254 ÷ 16 = 1514

Číslo 15 zodpovedá F a 14 zodpovedá E v hexadecimálnej sústave. Výsledok je FE (HEX).

Prevod hexadecimálna → desiatková sústava

Každú hexadecimálnu číslicu (alebo písmeno prevedené na desiatkové číslo) vynásobíme príslušnou mocninou základu 16. Prevod 1A (HEX):

  • 1×16¹ + A×16⁰ = 1×16 + 10×1 = 16 + 10 = 26 (DEC).

Prevod binárna → hexadecimálna sústava

Binárne číslo rozdelíme po 4 bity sprava (ak je potrebné, doplníme nuly na začiatok) a každý blok prevedieme na hexadecimálnu číslicu. Prevod 11011110 (BIN):

  • Rozdelíme: 1101 1110
  • 1101 = D
  • 1110 = E

Výsledok je DE (HEX).

Prevod hexadecimálna → binárna sústava

Každý hexadecimálny znak prevedieme na 4-bitové binárne číslo. Prevod 3F (HEX):

  • 3 = 0011
  • F = 1111

Výsledok je 00111111 (BIN).

IPv6: Budúcnosť internetového adresovania

IPv6 (Internet Protocol version 6) je nová generácia internetového protokolu, ktorá nahrádza starší IPv4. Dôvodom je predovšetkým nedostatok dostupných adries v IPv4, ktorý brzdil ďalší rozvoj internetu.

Kľúčové vlastnosti a výhody IPv6

IPv6 prináša množstvo vylepšení a zásadných zmien:

  • Dĺžka adresy: Adresy IPv6 majú dĺžku 128 bitov, čo je obrovský nárast oproti 32-bitovým adresám IPv4. To umožňuje existenciu takmer nekonečného počtu unikátnych adries (až 3.4×10³⁸).
  • Zápis adresy: IPv6 adresy sa zapisujú hexadecimálne, rozdelené do ôsmich blokov po 16 bitoch, ktoré sú oddelené dvojbodkami. Príklad: 2001:0db8:85a3:0000:0000:8a2e:0370:7334.
  • Zjednodušenie zápisu: Viaceré po sebe idúce nulové bloky v adrese sa môžu skrátiť pomocou ::. Príklad skrátenia predchádzajúcej adresy: 2001:db8::8a2e:370:7334.
  • Žiadne NAT: Každé zariadenie môže mať verejnú IP adresu, čo eliminuje potrebu NAT (Network Address Translation) a zjednodušuje sieťovú komunikáciu.
  • Lepšia podpora pre mobilné zariadenia: IPv6 je navrhnutý s ohľadom na mobilné siete a internet vecí (IoT).
  • Zabudované zabezpečenie: Podpora IPsec (Internet Protocol Security) je integrovaná priamo v protokole.

Prepojenie IPv4 a IPv6: Mechanizmy prechodu

Prechod z IPv4 na IPv6 je komplexný, pretože protokoly nie sú priamo kompatibilné. Na zabezpečenie komunikácie medzi nimi sa používajú prechodové mechanizmy:

  • a) Dual Stack: Zariadenie (napríklad server alebo počítač) má pridelenú IPv4 aj IPv6 adresu. Dokáže komunikovať v oboch sieťach súčasne, pričom si vyberie vhodný protokol podľa cieľového zariadenia. Je to najpreferovanejší spôsob prechodu.
  • b) Tunneling (Tunelovanie): IPv6 paket sa “zabalí” do IPv4 paketu a prenesie cez existujúcu IPv4 sieť. Príklady tunelovacích mechanizmov sú:
  • 6to4: Automatizovaný tunel pre prechod medzi IPv6/IPv4.
  • Teredo: Umožňuje tunelovanie IPv6 cez NAT v IPv4 sieťach.
  • ISATAP: Využíva IPv4 infraštruktúru ako prechodovú sieť pre IPv6.
  • c) NAT64 a DNS64: Tieto mechanizmy umožňujú komunikáciu IPv6 klienta s IPv4 serverom.
  • NAT64: Prekladá IPv6 adresy na IPv4 adresy a naopak.
  • DNS64: Upravuje DNS záznamy tak, aby IPv6 klient získal syntetickú IPv6 adresu aj pre servery, ktoré majú len IPv4 adresu.

Webové servery a ich konfigurácia: Chrbtová kosť internetu

Webový server je kľúčovou súčasťou každej webovej stránky. Prijíma požiadavky (HTTP/HTTPS) od webových prehliadačov a vracia im obsah, ako sú HTML, CSS, obrázky alebo skripty. Bez neho by žiadna webová stránka nebola dostupná.

Najčastejšie používané webové servery

Vo svete existuje niekoľko dominantných webových serverov:

  • Apache HTTP Server: Je to open-source, veľmi flexibilný a široko používaný server, ktorý si udržuje popularitu už dlhé roky.
  • Nginx: Moderný a efektívny webový server, optimalizovaný pre vysoké zaťaženie a často používaný v cloudových prostrediach a ako reverzná proxy.
  • IIS (Internet Information Services): Riešenie od spoločnosti Microsoft, určené primárne pre Windows servery.

Základné kroky konfigurácie Apache (príklad pre Linux)

Konfigurácia webového servera sa môže líšiť, ale pre Apache na Linuxe sú typické nasledujúce kroky:

  1. Inštalácia: Apache sa typicky inštaluje pomocou balíčkovacieho systému (napr. sudo apt install apache2 na Debiane/Ubuntu).
  2. Overenie funkčnosti: Po inštalácii a spustení servera môžete overiť jeho funkčnosť. Otvorte webový prehliadač a zadajte adresu ``. Mala by sa zobraziť úvodná stránka Apache.
  3. Pridanie vlastného webu: Webové súbory (HTML, CSS, obrázky) sa zvyčajne umiestňujú do adresára /var/www/html/. Tu môžete nahrať svoj súbor index.html alebo index.php.
  4. Konfigurácia hostingu (Virtual Hosts): Pre prevádzku viacerých webových stránok na jednom serveri sa používajú virtuálne hosty. Ich konfigurácia sa nachádza v /etc/apache2/sites-available/. Tu môžete definovať vlastné domény, porty a SSL certifikáty.
  5. Pridanie podpory PHP: Pre dynamické webové stránky je potrebná podpora skriptovacích jazykov ako PHP. To sa realizuje inštaláciou príslušného PHP modulu a jeho konfiguráciou pre Apache.
  6. Reštart servera: Po každej zmene konfigurácie servera Apache je potrebné ho reštartovať (napr. sudo systemctl restart apache2) pre aplikovanie zmien.

Kartičky

1 / 17

Čo je binárna sústava a kde sa používa?

Sústava so základom 2 používajúca iba číslice 0 a 1; používa sa v počítačoch (digitálny svet).

Ťukni na otočenie · Potiahni na navigáciu

Prepojenie webovej stránky a databázy: Dynamický obsah

Moderné webové stránky, ako sú e-shopy, sociálne siete alebo systémy na správu obsahu (CMS), sú dynamické. To znamená, že ich obsah sa mení a prispôsobuje používateľovi. Pre ukladanie a načítanie týchto dát je nevyhnutné prepojenie webovej stránky s databázou.

Prečo prepojiť web s databázou?

  • Ukladanie údajov: Databázy slúžia na trvalé ukladanie rôznych typov informácií – napríklad používateľských účtov, produktov, článkov, komentárov či objednávok.
  • Dynamický obsah: Umožňujú zobraziť rôzny obsah pre rôznych používateľov alebo na základe ich akcií (napr. prihlasovacie formuláre, výsledky vyhľadávania).
  • Správa obsahu: Obsah webu možno spravovať cez administrátorské rozhranie bez priamej úpravy kódu.

Používané technológie pre databázové prepojenie

Pre úspešné prepojenie webu a databázy sa používajú rôzne technológie:

  • Webové jazyky: Na strane servera sa používajú jazyky ako PHP, Python (s frameworkmi ako Django), JavaScript (s Node.js) alebo Ruby (s Ruby on Rails).
  • Databázy: Najčastejšie relačné databázy zahŕňajú MySQL, MariaDB, PostgreSQL a SQLite. Každá z nich má svoje špecifiká a výhody.
  • Komunikačný jazyk: Pre interakciu s relačnými databázami sa používa štruktúrovaný dopytovací jazyk SQL (Structured Query Language).

Príklad: Prepojenie pomocou PHP a MySQL

Prepojenie webovej stránky s databázou v PHP typicky zahŕňa tri hlavné kroky:

  1. Pripojenie k databáze: Vytvorenie spojenia s databázovým serverom s použitím príslušných prihlasovacích údajov (server, používateľské meno, heslo, názov databázy).
  • $conn = new mysqli("localhost", "uzivatel", "heslo", "nazov_db");
  • if ($conn->connect_error) { die("Chyba pripojenia: ". $conn->connect_error); }
  1. Získanie údajov z tabuľky: Vykonanie SQL dopytu na získanie alebo vloženie dát. Výsledky sa potom spracujú a zobrazia na webovej stránke.
  • $sql = "SELECT meno, email FROM uzivatelia";
  • $result = $conn->query($sql);
  • if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "Meno: ". $row["meno"]. " - Email: ". $row["email"]. "<br>"; } }
  1. Zatvorenie spojenia: Po dokončení práce s databázou je dôležité spojenie uzavrieť, aby sa uvoľnili zdroje.
  • $conn->close();

Bezpečnostné zásady pri práci s databázami

Bezpečnosť je pri prepojení webu s databázou kritická:

  • Nikdy neukladajte heslá v čitateľnej forme: Používajte hashovanie (napríklad funkcie ako password_hash() v PHP) na zabezpečenie hesiel pred únikom.
  • Používajte prepared statements (pripravené príkazy): Chráni pred útokmi typu SQL injection, ktoré môžu viesť k zneužitiu databázy.
  • Obmedzujte prístupové práva: Databázový používateľ pre webovú aplikáciu by mal mať len minimálne potrebné práva na prístup k údajom (princíp najmenších oprávnení).

Často kladené otázky (FAQ) o digitálnych základoch

Študenti sa často pýtajú na detaily týchto kľúčových tém. Tu sú odpovede na niektoré z nich:

Aký je hlavný dôvod prechodu z IPv4 na IPv6?

Hlavným dôvodom prechodu na IPv6 je vyčerpanie dostupných adries v protokole IPv4. 128-bitové adresy IPv6 poskytujú prakticky neobmedzený počet unikátnych adries, čo je nevyhnutné pre rastúci počet zariadení pripojených k internetu (IoT, mobilné zariadenia).

Čo je to Virtual Host a prečo sa používa pri webových serveroch?

Virtual Host (virtuálny hostiteľ) umožňuje jednému fyzickému webovému serveru (napr. Apache) hostiť viacero domén alebo webových stránok. Každý virtuálny hostiteľ má svoju vlastnú konfiguráciu (doménové meno, koreňový adresár webu, SSL certifikáty), čo optimalizuje využitie hardvérových zdrojov.

Ako môžem chrániť webovú databázu pred SQL injection útokmi?

Najlepšou obranou proti SQL injection sú prepared statements (pripravené príkazy). Namiesto priameho vkladania používateľských vstupov do SQL dopytu sa používajú parametre, čím sa oddelí kód dopytu od dát. V PHP sa na to používa napríklad objekt PDO alebo mysqli s pripravenými príkazmi.

Sign up to access full content

Create a free account to unlock all study materials, take interactive tests, listen to podcasts and more.

Create free account

Súvisiace témy