Kako isključiti IPv6 na Debianu?

Ukoliko se pitate zašto bi sada u vrijeme kada gasimo IPv4 radili obrnuto, u pravu ste, ne bi trebali. Ali, mi nećemo ugasiti taj protokol, nego ćemo mu samo privremeno dati manju važnost. Razlog je taj što se u novijim distribucijama, pa tako i u Debianu, forsiraju noviji protokol IPv6. Ovo, nažalost, može otežati rad nekih programa i servisa, primjerice skupine programa za APT i DNS-a.

Vjerojatno ste primjetili da ponekad naredba apt-get ne radi kako treba, a prilikom osvježavanja sustava može se vidjeti nešto poput ovog:

# apt-get update
0% [Connecting to ftp.hr.debian.org (2001:b68:ff:1::11)]
[Connecting to security.debian.org (2607:ea00:101:3c0b:207:e9ff:fe00:e595)]
Get:1 http://ftp.hr.debian.org wheezy Release.gpg [1,672 B]
...

APT se pokušava spojiti na IPv6 adesu, a do vas IPv6 jednostavno nije došao. No, morate znati da su vaša sučelja već sada podešena IPv6 adresama, te da je vaš poslužitelj spreman za rad na ovom mrežnom protokolu:

$ ifconfig -a
eth0 Link encap:Ethernet HWaddr 02:11:a9:52:12:82
inet addr:161.53.A.B Bcast:161.53.A.1 Mask:255.255.255.0
inet6 addr: 2001:b68:c0ff:0:212:a8ef:fe14:186/64 Scope:Global
inet6 addr: fe80::211:a8ef:fe14:186/64 Scope:Link
...
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host

Još jedan servis, a to je DNS, može praviti probleme:

Mar 16 09:51:56 server named[16614]: error (network unreachable)
resolving './NS/IN': 2001:500:2d::d#53
Mar 16 09:51:56 server named[16614]: error (network unreachable)
resolving 'sysdns.carnet.hr/A/IN': 2001:500:2d::d#53

U ovom slučaju, koji je prijavio kolega sistem-inženjer, uopće ne može doći do replikacije na naš servis sysdns.carnet.hr, jer korisnikov poslužitelj ne rabi protokol IPv6.  Inače, u prvom retku adresa kojoj poslužitelj želi pristupiti je jedna od root DNS poslužitelja (d.root-servers.net), ali u IPv6 obliku.

Kako ćemo onda naš poslužitelj natjerati da rabi IPv4 adrese? Prvo, možemo natjerati poslužitelj da rabi isključivo IPv4 adrese, ali to ne želimo. Ono što želimo je privremeno dati prioritet protokolu IPv4, dok ne omogućimo puni mrežni pristup preko IPv6 do našeg LAN-a.

Prioritet protokolu IPv4 dajemo u datoteci /etc/gai.conf. Ova datoteka je zapravo konfiguraciju resolvera, odnosno funkcije getaddressinfo(3) (otuda i ime gai). Ova funkcija vraća i IPv6 i IPv4 adrese, a koju će preferirati možemo konfigurirati putem navedene datoteke. Sve što trebate napraviti je odkomentirati 54. redak:

precedence ::ffff:0:0/96  100

Ovo će dati niži prioritet IPv6 adresama (100). Nije potreban restart nijednog servisa, ali možete to napraviti, štete neće biti.

Ukoliko ste iza NAT-a, potrebno je odkomentirati još par redaka, malo niže u datoteci:

#    For sites which use site-local IPv4 addresses behind NAT there is
# the problem that even if IPv4 addresses are preferred they do not
# have the same scope and are therefore not sorted first. To change
# this use only these rules:
#
scopev4 ::ffff:169.254.0.0/112 2
scopev4 ::ffff:127.0.0.0/104 2
scopev4 ::ffff:0.0.0.0/96 14

To je, uglavnom, to. Iako postoje načini za potpuno ukidanje protokola IPv6, nemojte to raditi, jer je IPv4 iscrpljen. Vrijeme je za IPv6, a na ovaj način dobiveno vrijeme utrošite na proučavanje protokola IPv6 i njegovu implementaciju, te prezentaciju prema svojim korisnicima.

 

Kuharice: 
Kategorije: 
Vote: 
0
No votes yet