DNS v HKfree: Porovnání verzí

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání
 
(Není zobrazeno 13 mezilehlých verzí od 6 dalších uživatelů.)
Řádek 1: Řádek 1:
=== Pozor ===
+
Tento návod je pro správce z zástupce správců oblastí, kteří chtějí provést změnu v záznamech HKFree DNS systému.
Kontaktní mail '''dns@hkfree.org NENÍ v provozu'''. Pro založení účtu v SVN, kontaktujte '''pouw()hkfree.org''', pro založení nových zón, případně rady jak měnit složitější záznamy '''lada()hkfree.org'''
 
  
Tento navod je pro spravce oblasti, kteri chteji neco upravit v souborech typu hkfree.org-common, hkfree.org-internal, hkfree.org-out atd.
+
Dříve se tak provádělo pomocí SVN a manuální úpravy ''bindových'' zónových souborů. Svět se posunuje kupředu, tak i v hkfree se dalo pár chytrých hlav dohromady a vzniklo NSDB.
  
=== Příprava ===
+
'''NSDB na [https://nsdb.hkfree.org nsdb.hkfree.org]''' je webová aplikace pro jednoduchou úpravu/přidání/mazání DNS záznamů všech zón v hkfree. Do ní je potřeba se přihlásit pomocí HKFree IDP loginu a hesla.
  
1) Pokud nemam jeste ucet v SVN pro DNS, tak si napisu na dns@hkfree.org s zadosti o jeho vytvoreni (idealni s vystupem z htpasswd -sn username).
+
'''Pozor''', nyní máme jen jednu zónu '''hkfree.org''' (+ několik reverzních). Takže i když to v editoru NSDB vypadá, že má každá oblast svou zónu, je to jen pro zjednodušení přehledu v zóně hkfree.org. tj.můžeš si zobrazit jen domény třetího řádu (první položka) a nebo všechny poddomény dle domény III. řádu.
linux:~# htpasswd -sn pepa
 
New password:
 
Re-type new password:
 
pepa:{SHA}3yEczdlKY+C8ueauQnoklISknWA=
 
''pozn.: htpasswd je např. součást balíku Apache''
 
  
Tento radek:
+
=== Technické info ===
pepa:{SHA}3yEczdlKY+C8ueauQnoklISknWA=
+
Naše DNS servery běží na:
  
V retezci je moje heslo zakodovane, tudiz jej neni treba prenaset mailem a ani spravce SVN se ho nedozvi.
+
*<code>10.107.4.100</code> a <code>10.107.4.129</code>
 +
*<code>2a01:168::4:100</code> a <code>2a01:168::4:129</code>
 +
*<code>89.248.240.1</code> a <code>89.248.240.2</code>
  
2) Stahnu si nejakeho SVN klienta
+
a odpovídají na:
* prikazova radka: svn
 
  
* linux: kdesvn
+
*UDP port 53
 +
*TCP port 53
 +
*DoH (DNS over HTTPS) port 443 na url <code><nowiki>https://ns1.hkfree.org/dns-query</nowiki></code> a <code><nowiki>https://ns2.hkfree.org/dns-query</nowiki></code>
  
* windows: TortoiseSVN, PSPad
+
===Přidání záznamu===
  
3) Vytvorim si na svem pocitaci adresar svn a vstoupim do nej
+
*vyberu zónu ve které chci přidat. (v případě zóny ...hkfree.org je jedno jestli vyberu přímo hkfree.org, nebo třeba osice.hkfree.org, stále jde o jednu zónu)
mkdir svn
+
*vpravo nahoře přidám záznam
cd svn
+
*vložím údaje
 +
*uložím
  
4) Stahnu si aktualni verzi konfiguracnich souboru
+
===Úprava nebo smazání záznamu===
svn co http://svn.hkfree.org/dns
 
  
=== Jednotlivé změny ===
+
*vyberu zónu ve které chci měnit
 +
*kliknu na tužtičku vpravo u záznamu
 +
*upravuji nebo mažu
 +
**poud upravuji, nakonec uložím
  
1) Obnovim si aktualni verzi konfiguracnich souboru
+
=====Nápověda pro záznamy=====
cd svn/dns
 
svn update
 
  
2) Upravim konfiguracni soubory a zkontroluji, zda jsem zmenil opravdu jen to co chci.  
+
*Name = název záznamu ''(na tohle se ptám)''
 +
*Type = typ záznamu
 +
**A - IPv4 adresa
 +
**AAAA - IPv6 adresa
 +
**CNAME - alias pro jiný záznam
 +
**PTR - reverzní IP záznam
 +
**MX - mailserver záznam
 +
**TXT - volný text k záznamu
 +
**SRV - záznam služby (umí najít TCP/UDP porty přes DNS, víc [https://cs.wikipedia.org/wiki/SRV_z%C3%A1znam tady])
 +
*Content = hodnota záznamu ''(tohle mi DNSka odpoví)''
 +
*Priority = priorita záznamu
 +
*TTL ''(Time To Live)'' = maximální čas uchování záznamu v cache v sekundách
 +
*'''Internal / External'''
 +
**jenom internal - na záznam bude DNS odpovídat pouze na dotazy '''zevnitř naší sítě'''
 +
**jennom external - na záznam bude DNS odpovídat jen na dotaz '''z internetu'''
 +
**oboje - DNS odpoví vždy
 +
**Příklad: záznam ''lhota1.hkfree.org'' s hodnotou ''10.107.15.1'' nechci pustit do internetu -> pouze '''internal'''
  
'''Nezapomenu''' zaktualizovat '''serial''' v zonovych souborech, ktere upravuji, změnu jinak nepřevezmou další DNS servery. Formát je RRRRMMDDnn rok, měsíc, den a n-tá změna ve dni, např. pro 24.3.2008 první změna je to: 2008032400
+
===Vytváření nových zón===
 +
Vytváření zón ''zatím'' NSDB neumí, napíštu DNS teamu a on mi pomůže.
  
Pred odeslanim do SVN je treba spustit
+
V budoucnu to NSDB zvládne.
svn diff
 
a prohlednout si, zda jsou tam jen _moje_ zmeny.
 
  
3) Kontrola zon
+
===DNS Team (na slacku)===
  
Priklad:
+
*@Ondra Lhota - slave ns1 a ns2
 
+
*@Vecino
named-checkzone 245.248.89.in-addr.arpa 89.248.245
+
*@zitnyp
 
+
*@cumulus - nsdb
nebo
 
 
 
named-checkzone hkfree.org hkfree.org-internal
 
named-checkzone hkfree.org hkfree.org-out
 
 
 
Prubezna kontrola vsech zonovych souboru je dostupna na
 
[http://errordns.hkfree.org errordns.hkfree.org]
 
 
 
4) Commitnu zmeny s komentarem, co jsem provadel(a) za zmeny
 
svn commit
 
Jako komentar ke zmene napisu smysluplny komentar. Napriklad:
 
Rusim neplatne CNAME pro xyz.hkfree.org
 
nebo:
 
Oprava A zaznamu pro 89.248.249.250
 
 
 
5) Zmeny, ktere jsem poslal do SVN se v zivem DNS serveru projevi do 5 minut. Pockam a zkontroluji, jestli jde resolvnout napriklad www.hkfree.org a mnou upravene zaznamy.
 
nslookup www.hkfree.org 10.107.4.100
 
Testujte vždy proti serveru 10.107.4.100, protože ostatní DNS servery a DNS-cache mohou nové nastavení přijmout se zpožděním.
 
 
 
=== Vytváření nových zón ===
 
Jestliže se chci starat o zónu, která ještě na centrálním DNS není, je třeba zónové soubory vytvořit a přidat do SVN a doplnit v souboru zones.conf. Dále je potřeba doplnit informaci o existenci těchto zón v nadřazených zónách v souborech 10.107 a hkfree.org-internal.
 
 
 
Příklad:
 
*Vytvářím zónu d-network.hkfree.org
 
zones.conf:
 
zone "d-network.hkfree.org" {
 
  type master;
 
  file "master/d-network.hkfree.org";
 
  also-notify { 10.107.4.129; 10.107.0.41; 10.107.50.1; 10.107.3.1; 10.107.5.1; 10.107.7.245; 10.107.11.65; 10.107.51.254; };
 
};
 
 
 
soubor hkfree.org-internal:
 
d-network      NS      ns.hkfree.org.
 
d-network      A      10.107.3.1
 
 
 
*Vytvářím zónu 10.107.3
 
zones.conf:
 
zone "3.107.10.in-addr.arpa" {
 
  type master;
 
  file "master/10.107.3";
 
  also-notify { 10.107.4.129; 10.107.0.41; 10.107.50.1; 10.107.3.1; 10.107.5.1; 10.107.7.245; 10.107.11.65; 10.107.51.254; };
 
};
 
 
 
soubor 10.107:
 
3                      NS      ns.hkfree.org.
 
 
 
(v souborech je hodně často místo ns.hkfree.org zapsáno z historických důvodů charon.hkfree.org - na tom nezáleží, OK je obojí)
 
 
 
Vysvětlení:
 
NS záznam říká, kde se ta konkrétní zóna nachází - pokud na centráním DNS serveru, uvádí se ns, nebo charon. Pokud provozujete svoje vlastní DNS a nechcete změny zadávat přes SVN, je potřeba tohle nastavení udělat, aby se zbytek hkfree dotazoval na váš server - právě tady se ostatní servery dozvědí, že se o to stará váš server.
 
"A" záznam je potřeba hlavně pokud je zóna jinde než na centrálním serveru. (Pomůže zjistit na jaké IP se NS server nachází). Jestli je vaše zóna v SVN a centrálním serveru, A záznam uvádět můžete, ale nemusíte (nesmí pak ale být v rozporu s prázdným A záznamem "(nic) A 10.107.X.1" v podřazeném zónovém souboru).
 
 
 
=== Metodika pojmenovávání páteřních spojů ===
 
Ti, kdo mají v pořádku dopředné i reverzní zóny ve svých oblastech, mohou psát (odjakživa) záznamy páteřních spojů takto:
 
 
 
ip.ad.re.sa          PTR  kam.kdetoje.hkfree.org (soubor 10.107.re)
 
kam                  A    ip.ad.re.sa            (soubor kdetoje.hkfree.org)
 
 
 
například pmv.hive.hkfree.org
 
 
 
důležité je, aby zóna kdetoje.hkfree.org byla existující zóna v DNS a aby obsahovala záznam o IP adrese pro název "kam"
 
Pro tento příklad by v hive.hkfree.org měl být záznam:
 
pmv                  A    10.107.X.X
 
 
 
==== Automatická zóna pro backbone bb.hkfree.org ====
 
z těchto zón je automaticky generována dopředná zóna bb.hkfree.org
 
* 10.107.0
 
* 10.107.1
 
* 10.107.99
 
* 10.107.101
 
* 10.107.102
 
* 10.107.199
 
* 10.107.202
 
 
 
Jakmile tyto zóny budou obsahovat záznam
 
ip.ad.re.sa PTR neco.bb.hkfree.org
 
vygeneruje se patřičný neco.bb.hkfree.org -> IP adresa záznam (A záznam) automaticky
 
 
 
Zde budeme používat 2 varianty, podle kterých bude jednoznačné jasné, kde se konkrétní zařízení nachází.
 
 
 
* obdobně jako v předchozím případě, podle logiky DNS, s tečkou
 
kam.kdetoje.bb.hkfree.org
 
* anebo s pomlčkou, lépe čitelné člověkem, opačné pořadí
 
odkud-kam.bb.hkfree.org
 
 
 
Ve všech případech můžeme volitelně před celý název přidat typ zařízení, který oddělíme libovolně od zbytku záznamu, např.:
 
 
 
Zařízení je na spar, míří na pmv a je to routerboard
 
 
 
* rb-pmv.spar.hkfree.org
 
* rb.pmv.spar.hkfree.org
 
* rb-spar-pmv.bb.hkfree.org
 
* rb.spar-pmv.bb.hkfree.org
 
* rb.pmv.spar.bb.hkfree.org
 
atd.
 
 
 
=== Tipy ===
 
 
 
* Pod linuxem je nejpohodlnější stáhnout svn přes
 
svn co URL
 
A s vytvořeným adresářem pracovat například programem kdesvn. Vše se pak dá obsloužit klikáním.
 
 
 
* Pod windows se může vyskytnout problém s řádkováním, notepad vše zobrazí na jednom řádku. Existuje konverzní nástroj unix2dos, který soubor přeformátuje tak, že lze v notepadu zobrazit správně, následně dos2unix soubor přeformátuje zpět do formátu pro UNIX.
 
 
 
DNS server si poradí s textovými soubory v obou formátech, takže "své" soubory klidně nechte odřádkované jako v DOS/Windows, ale pro společné soubory, zejméhna hkfree.org-*, 10.107.0 apod. zachovejte formátování pro UNIX.
 
 
 
Utilita je na webu [http://www.thefreecountry.com/tofrodos/ http://www.thefreecountry.com/tofrodos/], přímý odkaz na stažení utility [http://tofrodos.sourceforge.net/download/tfd178.zip zde]
 
 
 
Nejlepší řešení je upravovat zónové soubory v editoru [http://www.pspad.com/cz/download.php PSPad], který zalamování řádků zachová.
 
 
 
=== Doporuceno na projiti ===
 
 
 
* http://merlin.fit.vutbr.cz/wiki/index.php?title=SVN_tutori%C3%A1l
 
* http://svnbook.red-bean.com/
 

Aktuální verze z 27. 3. 2025, 11:35

Tento návod je pro správce z zástupce správců oblastí, kteří chtějí provést změnu v záznamech HKFree DNS systému.

Dříve se tak provádělo pomocí SVN a manuální úpravy bindových zónových souborů. Svět se posunuje kupředu, tak i v hkfree se dalo pár chytrých hlav dohromady a vzniklo NSDB.

NSDB na nsdb.hkfree.org je webová aplikace pro jednoduchou úpravu/přidání/mazání DNS záznamů všech zón v hkfree. Do ní je potřeba se přihlásit pomocí HKFree IDP loginu a hesla.

Pozor, nyní máme jen jednu zónu hkfree.org (+ několik reverzních). Takže i když to v editoru NSDB vypadá, že má každá oblast svou zónu, je to jen pro zjednodušení přehledu v zóně hkfree.org. tj.můžeš si zobrazit jen domény třetího řádu (první položka) a nebo všechny poddomény dle domény III. řádu.

Technické info

Naše DNS servery běží na:

  • 10.107.4.100 a 10.107.4.129
  • 2a01:168::4:100 a 2a01:168::4:129
  • 89.248.240.1 a 89.248.240.2

a odpovídají na:

  • UDP port 53
  • TCP port 53
  • DoH (DNS over HTTPS) port 443 na url https://ns1.hkfree.org/dns-query a https://ns2.hkfree.org/dns-query

Přidání záznamu

  • vyberu zónu ve které chci přidat. (v případě zóny ...hkfree.org je jedno jestli vyberu přímo hkfree.org, nebo třeba osice.hkfree.org, stále jde o jednu zónu)
  • vpravo nahoře přidám záznam
  • vložím údaje
  • uložím

Úprava nebo smazání záznamu

  • vyberu zónu ve které chci měnit
  • kliknu na tužtičku vpravo u záznamu
  • upravuji nebo mažu
    • poud upravuji, nakonec uložím
Nápověda pro záznamy
  • Name = název záznamu (na tohle se ptám)
  • Type = typ záznamu
    • A - IPv4 adresa
    • AAAA - IPv6 adresa
    • CNAME - alias pro jiný záznam
    • PTR - reverzní IP záznam
    • MX - mailserver záznam
    • TXT - volný text k záznamu
    • SRV - záznam služby (umí najít TCP/UDP porty přes DNS, víc tady)
  • Content = hodnota záznamu (tohle mi DNSka odpoví)
  • Priority = priorita záznamu
  • TTL (Time To Live) = maximální čas uchování záznamu v cache v sekundách
  • Internal / External
    • jenom internal - na záznam bude DNS odpovídat pouze na dotazy zevnitř naší sítě
    • jennom external - na záznam bude DNS odpovídat jen na dotaz z internetu
    • oboje - DNS odpoví vždy
    • Příklad: záznam lhota1.hkfree.org s hodnotou 10.107.15.1 nechci pustit do internetu -> pouze internal

Vytváření nových zón

Vytváření zón zatím NSDB neumí, napíštu DNS teamu a on mi pomůže.

V budoucnu to NSDB zvládne.

DNS Team (na slacku)

  • @Ondra Lhota - slave ns1 a ns2
  • @Vecino
  • @zitnyp
  • @cumulus - nsdb