32.12. IPv6

Анхлан бичсэн Аарон Каплан. Дахин бүтцийг өөрчилж нэмсэн Том Рөүдс. Өргөтгөсөн Брэд Дэйвис.

IPv6 (бас IPng “IP next generation” буюу дараа үеийн IP гэгддэг) нь олонд танигдсан IP протоколын (бас IPv4 гэгддэг) шинэ хувилбар юм. Одоогийн бусад *BSD системүүдийн адил FreeBSD нь KAME IPv6 лавлагаа шийдлийг агуулдаг. Тэгэхээр таны FreeBSD систем таныг IPv6-г туршихад хэрэгтэй бүхнийг агуулсан байдаг. Энэ хэсэг нь IPv6-г тохируулж ажиллуулах талаар анхаарлаа хандуулах болно.

1990 оны эхэн үеэс хүмүүс IPv4-ийн хаягийн хэмжээ хурдацтай багасаж байгааг мэдэх болсон. Интернэтийн өсөлтийн хурдаас хамаараад хоёр гол асуудал гарч ирсэн:

IPv6 нь эдгээр асуудлууд болон өөр бусад олныг шийддэг:

IPv6-ийн бусад ашигтай олон боломжууд бас байдаг, тэдгээрээс дурдвал:

Дэлгэрэнгүй мэдээллийн талаар доороос үзнэ үү:

32.12.1. IPv6 хаягуудын тухай суурь мэдээлэл

IPv6 хаягуудын өөр өөр төрлүүд байдаг: Unicast, Anycast, болон Multicast.

Unicast хаягууд нь бидний мэддэг хаягууд юм. Unicast хаяг уруу илгээсэн пакет нь яг тэр хаягт харгалзах интерфэйс дээр ирдэг.

Anycast хаягуудыг unicast хаягуудаас ялгах боломжгүй байдаг боловч тэдгээр нь бүлэг интерфэйсүүдийг хаягладаг. Anycast хаяг уруу чиглэсэн пакет хамгийн ойрын (чиглүүлэгчийн хэмжилтийн хувьд) интерфэйс дээр ирэх болно. Anycast хаягуудыг зөвхөн чиглүүлэгчид ашиглаж болох юм.

Multicast хаягууд нь бүлэг интерфэйсүүдийг таньдаг. Multicast хаяг уруу чиглэсэн пакет нь multicast бүлэгт харьяалагдах бүх интерфэйсүүд дээр ирэх болно.

Тэмдэглэл: IPv4 цацах (broadcast) хаяг (ихэвчлэн xxx.xxx.xxx.255) нь IPv6-ийн multicast хаягуудаар илэрхийлэгддэг.

Хүснэгт 32-3. Нөөц IPv6 хаягууд

IPv6 хаяг Prefixlength буюу угтварын урт (битээр) Тайлбар Тэмдэглэл
:: 128 бит тодорхойлогдоогүй харьцуулбал IPv4 дэх 0.0.0.0
::1 128 бит loopback буюу буцах хаяг харьцуулбал IPv4 дэх 127.0.0.1
::00:xx:xx:xx:xx 96 бит суулгагдсан IPv4 Бага 32 бит нь IPv4 хаяг юм. Бас “IPv4 нийцтэй IPv6 хаяг” гэгддэг
::ff:xx:xx:xx:xx 96 бит IPv4-р илэрхийлэгдсэн IPv6 хаяг Бага 32 бит нь IPv4 хаяг юм. IPv6-г дэмждэггүй хостуудад зориулсан.
fe80:: - feb:: 10 бит link-local харьцуулбал IPv4 дэх loopback буюу буцах хаяг
fec0:: - fef:: 10 бит site-local  
ff:: 8 бит multicast  
001 (хоёртын системээр) 3 бит глобал unicast Бүх глобал unicast хаягууд нь энэ цөөрмөөс заагдана. Эхний 3 бит нь “001” байна.

32.12.2. IPv6 хаягуудыг унших нь

Дүрмийн дагуу ийм хэлбэртэй байна: x:x:x:x:x:x:x:x хэлбэрийн байх бөгөөд “x” бүр нь 16 битийн арван зургаат утга байна. Жишээ нь FEBC:A574:382B:23C1:AA49:4592:4EFE:9982

Хаяг нь ихэнхдээ дандаа тэгүүдээс тогтох урт дэд хэсгүүдээс тогтож болох бөгөөд хаягийн тийм хэсгийг “::” гэж хураангуйлж болно. Дөрвөн арван зургаат тооны гурав хүртэлх эхний “0”-үүдийг орхиж бас болно. Жишээ нь fe80::1 нь дүрэмд заасан хэлбэрээр бол fe80:0000:0000:0000:0000:0000:0000:0001 байна.

Гурав дахь хэлбэр нь сүүлийн 32 бит хэсгийг бидний мэддэг (аравтын) IPv4 загварын цэгүүдээр “.” тусгаарлаж бичих явдал юм. Жишээ нь 2002::10.0.0.1 нь (арван зургаатын) дүрэмд зааснаар 2002:0000:0000:0000:0000:0000:0a00:0001 болох бөгөөд үүнийг бас 2002::a00:1 гэж бичиж болох юм.

Энэ хүртэл уншигч доор дурдсаныг ойлгож чадаж байх ёстой:

# ifconfig
rl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
         inet 10.0.0.10 netmask 0xffffff00 broadcast 10.0.0.255
         inet6 fe80::200:21ff:fe03:8e1%rl0 prefixlen 64 scopeid 0x1
         ether 00:00:21:03:08:e1
         media: Ethernet autoselect (100baseTX )
         status: active

fe80::200:21ff:fe03:8e1%rl0 нь автоматаар тохируулагдсан link-local хаяг юм. Энэ нь MAC хаягаас автомат тохиргооны хэсэг болон үүсгэгддэг.

IPv6 хаягуудын бүтцийн тухай дэлгэрэнгүй мэдээллийг RFC3513 хаягаас үзнэ үү.

32.12.3. Холбогдох нь

Одоогоор бусад IPv6 хостууд болон сүлжээнүүдтэй холбогдох дөрвөн арга байдаг:

32.12.4. IPv6 ертөнц дэх DNS

IPv6-д зориулсан хоёр төрлийн DNS бичлэг байдаг. IETF нь A6 бичлэгийг хуучин, хэрэгцээнээс гарсан гэж зарласан. AAAA бичлэгүүд нь одоо стандарт болсон байгаа.

AAAA бичлэгүүдийг ашиглах нь амархан. Өөрийн хостын нэрийг дөнгөж авсан шинэ IPv6 хаягт зааж доор дурдсаныг:

MYHOSTNAME           AAAA    MYIPv6ADDR

өөрийн анхдагч бүсийн DNS файл уруу нэмж өгнө. Та өөрийн DNS бүсүүдийг удирддаггүй бол өөрийн DNS үйлчилгээ үзүүлэгчээс асуух хэрэгтэй. bind (8.3 ба 9 хувилбар) болон dns/djbdns-ийн (IPv6 засвартай) одоогийн хувилбарууд AAAA бичлэгүүдийг дэмждэг.

32.12.5. /etc/rc.conf файлд хэрэгцээтэй өөрчлөлтүүдийг хийх нь

32.12.5.1. IPv6 клиентийн тохиргоонууд

Эдгээр тохиргоонууд нь таны LAN-д байх машиныг чиглүүлэгч биш клиент маягаар ажиллуулахаар тохируулахад танд туслах болно. Таны интерфэйсийг ачаалах үед автоматаар rtsol(8)-оор тохируулуулахын тулд FreeBSD 9.x ба түүнээс хойшхи хувилбарууд дээр дараах мөрийг:

ipv6_prefer="YES"

rc.conf файлд нэмнэ.

FreeBSD 8.x болон түүнээс өмнөх дээр дараахийг нэмнэ:

ipv6_enable="YES"

2001:471:1f11:251:290:27ff:fee0:2093 зэрэг IP хаягийг өөрийн fxp0 интерфэйсд статикаар өгөхийн тулд FreeBSD 9.x-н хувьд доор дурдсаныг нэмнэ:

ifconfig_fxp0_ipv6="inet6 2001:471:1f11:251:290:27ff:fee0:2093 prefixlen 64"

Тэмдэглэл: Компьютерийн сүлжээнд холбогдсон тэр дэд сүлжээний зөв утгыг оруулж prefixlen 64-г солихоо мартуузай.

FreeBSD 8x болон түүнээс өмнөхийн хувьд дараахийг нэмнэ:

ipv6_ifconfig_fxp0="2001:471:1f11:251:290:27ff:fee0:2093"

2001:471:1f11:251::1 анхдагч чиглүүлэгчийг зааж өгөхдөө доор дурдсаныг /etc/rc.conf файлд нэмнэ:

ipv6_defaultrouter="2001:471:1f11:251::1"

32.12.5.2. IPv6 чиглүүлэгч/гарцын тохиргоонууд

Энэ нь таны туннелийн үйлчилгээ үзүүлэгчийн өгсөн чиглэлүүдийг авч тэдгээрийг дахин ачаалсан ч гэсэн үлдэхээр болгож тохиргоо болгон хөрвүүлэхэд танд туслах болно. Эхлүүлэх үед өөрийн туннелийг сэргээхийн тулд доор дурдсантай төстэйг /etc/rc.conf файлд ашиглана:

Тохируулах Ердийн Туннель хийх интерфэйсүүдийг жагсаана. Жишээ нь gif0:

gif_interfaces="gif0"

MY_IPv4_ADDR гэсэн локал төгсгөлтэй интерфэйсийг REMOTE_IPv4_ADDR гэсэн алсын төгсгөл уруу тохируулахын тулд:

gifconfig_gif0="MY_IPv4_ADDR REMOTE_IPv4_ADDR"

Өөрийн IPv6 туннелийн төгсгөл болгон ашиглахаар таны зааж өгсөн IPv6 хаягийг хамааруулахын тулд FreeBSD 9.x болон түүнээс хойшхийн хувьд доор дурдсаныг нэмнэ:

ifconfig_gif0_ipv6="inet6 MY_ASSIGNED_IPv6_TUNNEL_ENDPOINT_ADDR"

FreeBSD 8.x ба түүнээс өмнөхийн хувьд дараахийг нэмнэ:

ipv6_ifconfig_gif0="MY_ASSIGNED_IPv6_TUNNEL_ENDPOINT_ADDR"

Тэгээд таны хийх зүйл чинь IPv6-д зориулж анхдагч чиглүүлэлт тохируулах явдал юм. Энэ нь IPv6 туннелийн нөгөө тал байх болно:

ipv6_defaultrouter="MY_IPv6_REMOTE_TUNNEL_ENDPOINT_ADDR"

32.12.5.3. IPv6 туннелийн тохиргоонууд

Хэрэв сервер нь таны бусад сүлжээ болон гадаад ертөнцийн хооронд IPv6-г чиглүүлэх бол дараах /etc/rc.conf тохируулга бас хэрэгтэй болно:

ipv6_gateway_enable="YES"

32.12.6. Чиглүүлэгчийн зарлалт ба Хостын автомат тохиргоо

Энэ хэсэг нь IPv6 анхдагч чиглүүлэлтийг зарлахын тулд rtadvd(8)-г тохируулахад тань туслах болно.

rtadvd(8)-г идэвхжүүлэхийн тулд таны /etc/rc.conf файлд дараах тохиргоо хэрэгтэй болно:

rtadvd_enable="YES"

IPv6 чиглүүлэгчийн төлөөлөлт хийгдэх интерфэйсийг заах нь чухал юм. Жишээ нь rtadvd(8)fxp0-г ашиглахыг хэлж өгөхийн тулд доор дурдсаныг нэмнэ:

rtadvd_interfaces="fxp0"

Одоо бид /etc/rtadvd.conf тохиргооны файл үүсгэх ёстой. Энд жишээ байна:

fxp0:\
	:addrs#1:addr="2001:471:1f11:246::":prefixlen#64:tc=ether:

fxp0-г өөрийн ашиглах интерфэйсээр солих хэрэгтэй.

Дараа нь 2001:471:1f11:246::-г өөрийн хуваарилалтын угтвараар солиорой.

Хэрэв та /64 дэд сүлжээг зориулсан бол өөр бусад ямар ч өөрчлөлт хийх хэрэггүй. Хэрэв тийм биш бол та prefixlen# буюу угтварын уртыг зөв утгаар өөрчлөх шаардлагатай.

Энэ болон бусад баримтуудыг ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ хаягаас татаж авч болно.

FreeBSD-ийн талаар <questions@FreeBSD.org> хаягтай холбоо барихаасаа өмнө баримтыг уншина уу.
Энэ бичиг баримттай холбоотой асуулт байвал <doc@FreeBSD.org> хаягаар цахим захидал явуулна уу.
Энэ бичиг баримтын орчуулгатай холбоотой асуулт байвал <admin@mnbsd.org> хаягаар цахим захидал явуулна уу.