Қазіргі заманғы желілерде IPv6 жиі қолданылады, алайда кейде IPv4-ке басымдық беру қажет болатын жағдайлар болады. Бұл мақалада Ubuntu-дың әртүрлі нұсқалары (20.04 және 22.04) және CentOS 7 үшін IPv6-дан IPv4-ке басымдықты өзгерту әдістері қарастырылады. Біз екі әдісті қарастырамыз: gai.conf файлын баптау және sysctl параметрлерін пайдалану.
1-әдіс: gai.conf арқылы басымдықты өзгерту
gai.conf файлы (getaddrinfo конфигурациясы) атауларды шешу кезінде мекенжайлардың басымдықтарын баптау үшін қолданылады. Бұл файлды баптау жүйеге IPv6 мекенжайларынан бұрын IPv4 мекенжайларын таңдауға мүмкіндік береді.
Ubuntu 20.04 және 22.04
1-қадам: gai.conf файлын ашу және өңдеу
1. Терминалды ашыңыз.
2. /etc/gai.conf файлын суперпайдаланушы құқықтарымен өңдеңіз:
sudo vim /etc/gai.conf
#precedence ::ffff:0:0/96 10 жолын табыңыз. Егер ол түсіндірме ретінде берілген болса ( # таңбасымен басталса), # таңбасын алып тастаңыз және басымдық салмағын 100 етіп өзгертіңіз, осылайша оны белсенді етіп, IPv4-ке басымдық беріңіз:
precedence ::ffff:0:0/96 100
2-қадам: Өзгерістерді сақтау және желілік қызметтерді қайта жүктеу
Файлды сақтап, мәтіндік редакторды жабыңыз (nano-да:
Ctrl+X, содан кейінYжәнеEnterбасыңыз).Өзгерістер күшіне енуі үшін желілік қызметтерді қайта жүктеңіз немесе жүйені қайта іске қосыңыз:
systemctl restart systemd-networkd
Консольдегі команда арқылы жолды автоматты түрде өзгерту
Жолды автоматты түрде өзгерту үшін келесі команданы пайдаланыңыз:
sudo sed -i 's/^#precedence ::ffff:0:0\/96 10/precedence ::ffff:0:0\/96 100/' /etc/gai.conf
Бұл команда # таңбасын алып тастап, басымдық салмағын 100 етіп өзгертеді, осылайша жүйе IPv4 мекенжайларын таңдайды.
CentOS 7
1-қадам: gai.conf файлын ашу және өңдеу
Терминалды ашыңыз.
/etc/gai.confфайлын суперпайдаланушы құқықтарымен өңдеңіз:
sudo vim /etc/gai.conf
#precedence ::ffff:0:0/96 10 жолын табыңыз. Егер ол түсіндірме ретінде берілген болса (# таңбасымен басталса), # таңбасын алып тастаңыз және басымдық салмағын 100 етіп өзгертіңіз, осылайша оны белсенді етіп, IPv4-ке басымдық беріңіз:
precedence ::ffff:0:0/96 100
2-қадам: Өзгерістерді сақтау және желілік қызметтерді қайта жүктеу
Файлды сақтап, мәтіндік редакторды жабыңыз.
Желілік қызметтерді қайта жүктеңіз:
systemctl restart systemd-networkd
Консольдегі команда арқылы жолды автоматты түрде өзгерту
Жолды автоматты түрде өзгерту үшін келесі команданы пайдаланыңыз:
sudo sed -i 's/^#precedence ::ffff:0:0\/96 10/precedence ::ffff:0:0\/96 100/' /etc/gai.conf
Бұл команда # таңбасын алып тастап, басымдық салмағын 100 етіп өзгертеді, осылайша жүйе IPv4 мекенжайларын таңдайды.
2-әдіс: IPv4 басымдығын баптау үшін sysctl пайдалану
sysctl параметрлерін пайдалану ядро баптауларын басқаруға мүмкіндік береді, бұл IPv6-ны толық өшіру немесе оның ядро деңгейіндегі мінез-құлқын өзгерту үшін пайдалы.
Ubuntu 20.04 және 22.04
1-қадам: sysctl арқылы IPv6-ны өшіру
Терминалды ашыңыз.
/etc/sysctl.confфайлын суперпайдаланушы құқықтарымен өңдеңіз:
sudo vim /etc/sysctl.conf
IPv6-ны өшіру үшін файлдың соңына келесі жолдарды қосыңыз:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
2-қадам: Өзгерістерді қолдану
Файлды сақтап, мәтіндік редакторды жабыңыз.
Өзгерістерді келесі команда арқылы қолданыңыз:
sudo sysctl -p
Желілік қызметтерді қайта жүктеңіз:
systemd-networkd-ті қайта жүктеу:
sudo systemctl restart systemd-networkd
NetworkManager-ді қайта жүктеу:
sudo systemctl restart NetworkManager
CentOS 7
1-қадам: sysctl арқылы IPv6-ны өшіру
Терминалды ашыңыз.
/etc/sysctl.confфайлын суперпайдаланушы құқықтарымен өңдеңіз:
sudo vim /etc/sysctl.conf
IPv6-ны өшіру үшін файлдың соңына келесі жолдарды қосыңыз:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
2-қадам: Өзгерістерді қолдану
Файлды сақтап, мәтіндік редакторды жабыңыз.
Өзгерістерді келесі команда арқылы қолданыңыз:
sudo sysctl -p
Желілік қызметтерді қайта жүктеңіз:
network-ті қайта жүктеу:
sudo systemctl restart network
NetworkManager-ді қайта жүктеу:
sudo systemctl restart NetworkManagerӘдістерді салыстыру
gai.conf пайдалану
Артықшылықтары:
IPv6-ны толық өшіруді қажет етпейді, бұл IPv6 қажет болатын желілерде пайдалы болуы мүмкін.
Баптаудың қарапайымдылығы және жүйеде минималды өзгерістер.
Кемшіліктері:
Өзгерістер тек атауларды шешу тәртібіне әсер етеді, бүкіл желілік протоколдар стегіне емес.
sysctl пайдалану
Артықшылықтары:
IPv6-ны толық өшіру желілік мәселелерді диагностикалауды жеңілдетіп, қақтығыстарды жоя алады.
Кемшіліктері:
IPv6-ны толық өшіру тек IPv6 қолданылатын желілерде мәселелер тудыруы мүмкін.
Өзгерістер күшіне енуі үшін желілік қызметтерді немесе жүйені қайта жүктеу қажет.
Қорытынды
Ubuntu және CentOS жүйелерінде IPv6-дан IPv4-ке басымдықты өзгерту бірнеше әдістермен жүзеге асырылуы мүмкін. gai.conf файлын пайдалану атауларды шешу кезінде мекенжайлардың басымдықтарын өзгертуге мүмкіндік береді, ал sysctl арқылы баптау IPv6-ны толық өшіріп, жүйені тек IPv4-ті пайдалануға мәжбүрлейді. Әр әдістің өз артықшылықтары мен кемшіліктері бар, және таңдау сіздің нақты талаптарыңыз бен желі жағдайларыңызға байланысты. Бұл нұсқаулық сіздің жүйеңізді баптауда көмектеседі деп үміттенеміз.