Қазіргі заманғы желілерде 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-ті пайдалануға мәжбүрлейді. Әр әдістің өз артықшылықтары мен кемшіліктері бар, және таңдау сіздің нақты талаптарыңыз бен желі жағдайларыңызға байланысты. Бұл нұсқаулық сіздің жүйеңізді баптауда көмектеседі деп үміттенеміз.