centos dns სერვერის ინსტალაცია. MX-ის შემოწმება dig-ის გამოყენებით. PTR-ის შემოწმება dig-ის გამოყენებით

ერთ-ერთი მნიშვნელოვანი სერვისი, რომელიც უზრუნველყოფს თანამედროვე ინტერნეტის ფუნქციონირებას, არის საიტის სახელის IP მისამართად გადაქცევის სერვისი. ჩვენ დავაყენებთ DNS სერვისის იმპლემენტაციას ამ სტატიაში Bind 9-ის (დასახელებული) დაყენების მაგალითის გამოყენებით სერვერზე, რომელიც მუშაობს CentOS 7. ჩვენ მოვამზადებთ მინიმალურ აუცილებელ ძირითად ფუნქციონირებას და ჩავხედავთ ცოტა ღრმად ჩაწერის პარამეტრებს.

შებოჭვა- დღეს DNS სერვერის ყველაზე გავრცელებული დანერგვა, რომელიც უზრუნველყოფს IP მისამართების DNS სახელებად გადაქცევას და პირიქით. მას ასევე უწოდებენ სახელს, მაგალითად Freebsd-ში. ვიკიპედიის ინფორმაციით, ახლა ინტერნეტში არსებული 13 root DNS სერვერიდან 10 მუშაობს bind-ზე. ის დაინსტალირებულია თითქმის ყველა Linux დისტრიბუციაზე. მე განვიხილავ მის დაინსტალირებას CentOS 7 სერვერზე.

Bind 9 (დასახელებული) ინსტალაცია CentOS 7-ზე

უპირველეს ყოვლისა, მოდით შევამოწმოთ, გვაქვს თუ არა სისტემაში დაინსტალირებული DNS სერვერი:

# rpm -qa bind* bind-libs-lite-9.9.4-14.el7.x86_64 bind-license-9.9.4-14.el7.noarch

მე არ მაქვს დაინსტალირებული, რადგან ავირჩიე მინიმალური პროგრამული პაკეტი. ჩვენი სახელების სერვერი იმუშავებს chroot გარემოში, ამიტომ დააინსტალირეთ შესაბამისი პაკეტები:

# yum - y დააინსტალირე bind bind - utils bind - chroot

კიდევ ერთხელ, გთხოვთ გაითვალისწინოთ, რომ ჩვენ გამოვიყენებთ bind in-ს chrootგარემო უსაფრთხოების გაზრდის მიზნით. ეს აწესებს გარკვეულ მახასიათებლებს სერვერის დაყენებაში და მართვაში. ამ წვრილმანებში ფრთხილად უნდა იყოთ. ასე რომ, მოდით გავუშვათ bind:

# systemctl დაწყება დაასახელა-chroot# systemctl ჩართვა დაასახელა-chroot ln -s "/usr/lib/systemd/system/named-chroot.service" "/etc/systemd/system/multi-user.target.wants/named-chroot.service"

chroot დირექტორიაში შიგთავსის შემოწმება:

# ls -l /var/named/chroot/etc

ყველაფერი რიგზეა, სერვერი დაიწყო, საჭირო ფაილები შეიქმნა, ყველაფერი მზადაა კონფიგურაციისთვის. მოდი ვიზრუნოთ.

DNS სერვერის დაყენება CentOS 7-ში

ჩვენი სერვერის კონფიგურაციის ფაილი მდებარეობს /var/named/chroot/etc/named.conf. ვხსნით და მივყავართ შემდეგ ფორმაში:

# mcedit /var/named/chroot/etc/named.conf პარამეტრები (მოსმენის პორტი 53 (ნებისმიერი; ); listen-on-v6 პორტი 53 (არცერთი; ); დირექტორია "/var/named"; dump-file " /var/named/data/cache_dump.db"; დაშვების მოთხოვნა (127.0.0.1; 192.168.7.0/24; ); რეკურსია დიახ; დაშვება-რეკურსია (127.0.0.1; 192.168.7.0/24; .8); გადამგზავნი .8.8); ვერსია "DNS Server" "/var/named/dynamic"; "; dnssec-enable no; dnssec-validation no;); ზონა "." IN (აკრიფეთ მინიშნება; ფაილი "named.ca"; ); მოიცავს "/etc/named.rfc1912.zones"; მოიცავს "/etc/named.root.key"; logging ( არხის default_file (ფაილი "/var/log/named/default.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ;); კატეგორიის ნაგულისხმევი (default_file; ); );

ეს კონფიგურაცია უზრუნველყოფს რეგულარული ქეშირების სერვერის მუშაობას ადგილობრივ ქსელში. კომენტარები ზოგიერთ პარამეტრზე:

არ დაგავიწყდეთ firewall-ის წესების რედაქტირება DNS სერვერის სწორი მუშაობისთვის - გახსენით UDP პორტი 53 ქეშირების სერვერისთვის, რომელიც ჩვენ ახლა დავაკონფიგურირეთ, და TCP პორტი 53 გადამისამართების ზონებისთვის, რაც მოგვიანებით იქნება განხილული.

ახლა მოდით შევქმნათ საქაღალდე ჟურნალებისთვის. არ დაგავიწყდეთ, რომ ჩვენ ვმუშაობთ chroot გარემოში:

# cd /var/named/chroot/var/log && mkdir named && chown named. დაასახელა

საკუთარი ზონის მხარდაჭერა

ვთქვათ, ჩვენ უნდა განვათავსოთ ჩვენი საკუთარი ზონა site1.ru ჩვენს სახელზე. უპირველეს ყოვლისა, ჩვენ ვქმნით ზონის ფაილს, რომელსაც მოემსახურება DNS სერვერი:

# mcedit /var/named/chroot/var/named/site1.ru.zone $TTL 86400 @ IN SOA site1.ru. site1.ru.local. (2015092502 43200 3600 3600000 2592000) NS-ში ns1.site1.ru.

NS-ში ns2.site1.ru.

IN A 192.168.7.254 IN MX 10 mx.site1.ru. კარიბჭე IN A 192.168.7.254 mx IN A 192.168.7.250 ns1 IN A 192.168.7.235 ns2 IN A 192.168.7.231

ზონის ფაილების სინტაქსის აღწერა საკმაოდ კარგად არის დაფარული ინტერნეტში, არ მინდა ამაზე დეტალურად ვისაუბრო. თუ სასურველია, ყველას შეუძლია თავად ნახოს, სჭირდება თუ არა მხარდაჭერის კონფიგურაცია საკუთარი ზონისთვის.

ჩვენ ვაყენებთ საჭირო უფლებებს:

# chown root:named /var/named/chroot/var/named/site1.ru.zone # chmod 0640 /var/named/chroot/var/named/site1.ru.zone ზონა "site1.ru" (აკრიფეთ master; ფაილი "site1.ru.zone"; );:

ჩვენ ხელახლა წავიკითხეთ დასახელებული კონფიგურაცია გამოყენებით

rndc

# rndc ხელახალი კონფიგურაცია

დამატებულია მონა ზონის შეკვრა

10.1.3.4 - DNS სერვერის IP მისამართი, საიდანაც ვიღებთ ზონას. არ დაგავიწყდეთ ზონის გადაცემის დაშვება თქვენს DNS სერვერზე.

თქვენ უნდა დაამატოთ ჩაწერის უფლება დასახელებულ ჯგუფს ისე, რომ ასე გამოიყურებოდეს:

ამის შემდეგ, შეგიძლიათ გადატვირთოთ bind და შეამოწმოთ, რომ Slave zone ფაილი შეიქმნა. ზემოაღნიშნული პარამეტრებით, ის განთავსდება /var/named/chroot/var/named/site.ru.zone. თუ bind-ს არ აქვს ფაილის შექმნის უფლება, თქვენ მიიღებთ შეცდომას ჟურნალში:

ძირითადი ფაილის გადაყრა: tmp-7Swr6EZpcd: ღია: ნებართვა უარყოფილია

ბევრად უფრო საინტერესო და სასარგებლოა სერვერის მუშაობის დეტალური აღრიცხვის გაგება. დიდი ხნის განმავლობაში ზედაპირულად ვიღებდი ინტერნეტში არსებულ ყველა სახის რეკომენდაციას და ნიმუშის კონფიგურაციის ნაწილებს, სანამ არ გადავწყვიტე ამ თემასთან გამკლავება თავად და გადავხედე ორიგინალურ სახელმძღვანელოს.

Bind უზრუნველყოფს ჭრის ფართო შესაძლებლობებს. თქვენ შეგიძლიათ ჩაწეროთ თითქმის ყველაფერი, რაც დაკავშირებულია სერვერის მუშაობასთან. ახლა გაჩვენებთ, თუ როგორ მუშაობს ეს მარტივი მაგალითების გამოყენებით.

უპირველეს ყოვლისა, კონფიგურაციაში ჩვენ ვაყენებთ არხს, სადაც გარკვეული მოვლენების ჟურნალები შეინახება. აი ასეთი არხის მაგალითი:

არხის ზოგადი (ფაილი "/var/log/named/general.log" ვერსიები 3 ზომა 5 მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ;

აქ მითითებულია არხის სახელი, რომელსაც ჩვენ თვითონ გამოვიტანთ - ზოგადად, ფაილის გზა მითითებულია, ნათქვამია, რომ ჩვენ შევინახავთ ჟურნალის 3 ვერსიას არაუმეტეს 5 მეგაბაიტის ზომით. პარამეტრი სიმძიმეშეუძლია მიიღოს შემდეგი მნიშვნელობები:

პარამეტრი ბეჭდვის დრომიუთითებს, რომ მოვლენის დრო უნდა იყოს ჩაწერილი ჟურნალში. ჩემს მიერ მითითებული პარამეტრების გარდა, არხის კონფიგურაციას შეიძლება დაემატოს შემდეგი პარამეტრები:

  • ბეჭდვა-სიმძიმედიახ | no — განსაზღვრავს ჩაწეროს თუ არა სიმძიმის პარამეტრი ჟურნალში
  • ბეჭდვა-კატეგორიადიახ | no — მიუთითებს, ჩაიწეროს თუ არა ჟურნალის კატეგორიის სახელი

მე არ დავაკონკრეტე ეს პარამეტრები, რადგან ნაგულისხმევი მნიშვნელობა დაყენებულია არა, რაც მე პირადად მაწყობს.

ზოგადი კატეგორია (ზოგადი; );

ჟურნალის კატეგორიების აღწერა bind-ში (დასახელებული)
ნაგულისხმევიამ ცხრილის ყველა კატეგორიის მოვლენები აქ მოხვდება, თუ ისინი ცალკე არ არის განსაზღვრული, გამონაკლისია მოთხოვნების კატეგორიისა, რომელიც კონკრეტულად უნდა იყოს ჩართული. ანუ, თუ თქვენ დანიშნავთ მხოლოდ ნაგულისხმევ კატეგორიას, მაშინ მასში ჩაედინება ყველა კატეგორიის მოვლენები.
გენერალიეს კატეგორია განკუთვნილია ყველა ჟურნალისთვის, რომელიც არ შედის არცერთ ჩამოთვლილ კატეგორიაში.
მონაცემთა ბაზაშეტყობინებები, რომლებიც დაკავშირებულია ზონის შენახვასთან და ქეშირებასთან.
უსაფრთხოებამოთხოვნების დადასტურება და უარი.
კონფიგურაციაყველაფერი, რაც დაკავშირებულია კონფიგურაციის ფაილის წაკითხვასთან და შესრულებასთან.
გადამწყვეტისახელის გარჩევადობა, მათ შორის ინფორმაცია ქეშირების სერვერის მიერ კლიენტის სახელით შესრულებული რეკურსიული მოთხოვნების შესახებ.
xfer-inინფორმაცია ზონების მიღების შესახებ.
xfer-outინფორმაცია გადაცემის ზონების შესახებ.
შეატყობინეთშესვლა NOTIFY პროტოკოლის ოპერაციებში.
კლიენტიკლიენტის მოთხოვნების შესრულება.
შეუდარებელიშეტყობინებები, რომლებიც დასახელებულია, ვერ მიენიჭა რომელიმე კლასს, ან რომლებისთვისაც არ არის განსაზღვრული რუქები.
ქსელიქსელის ოპერაციების აღრიცხვა.
განახლებადინამიური განახლებები.
განახლება-უსაფრთხოებაგანახლების მოთხოვნების დადასტურება ან უარყოფა.
შეკითხვებსDNS სერვერზე მოთხოვნების ჩაწერა. ამ კატეგორიის გასააქტიურებლად, თქვენ ცალკე უნდა დააყენოთ პარამეტრი სერვერის კონფიგურაციაში. ეს გამოწვეულია იმით, რომ ეს კატეგორია წარმოქმნის უამრავ ჩანაწერს ჟურნალის ფაილში, რამაც შეიძლება გავლენა მოახდინოს სერვერის მუშაობაზე.
შეკითხვა-შეცდომებიშეცდომები სერვერზე მოთხოვნებში.
გაგზავნაშემომავალი პაკეტების გადამისამართება სერვერის მოდულებზე დასამუშავებლად.
dnssecDNSSEC და TSIG პროტოკოლების მოქმედება.
კოჭლი სერვერებიდაფიქსირდა შეცდომები, რომლებიც დაკავშირებულია დისტანციურ სერვერებთან დაკავშირებისას სახელის გადაწყვეტის მოთხოვნის შესრულების მცდელობისას.
მხოლოდ დელეგაციაიწერება მოთხოვნები, რომლებმაც დააბრუნეს NXDOMAIN.
edns-გამორთულიამოთხოვნები, რომლებიც იძულებულნი არიან გამოიყენონ ჩვეულებრივი DNS დროის ამოწურვის გამო.
RPZრეაგირების პოლიტიკის ზონის (RPZ) განხორციელებასთან დაკავშირებული ყველა ოპერაცია.
განაკვეთი-ლიმიტიოპერაციები, რომლებიც დაკავშირებულია განაკვეთის ლიმიტის ერთ ან მეტ განცხადებასთან ოფციებში ან ხედში.

ამრიგად, იმისათვის, რომ ყველა კატეგორიის ჟურნალი აჩვენოთ ცალკეულ ფაილებში, თქვენ უნდა დაამატოთ შემდეგი კონსტრუქცია დასახელებულ კონფიგურაციაში:

შესვლა (არხის ნაგულისხმევი (ფაილი "/var/log/named/default.log" ვერსიები 3 ზომა 5 მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის ზოგადი (ფაილი "/var/log/named/general.log" ვერსიები 3 ზომა დინამიური ბეჭდვის დრო, დიახ, /var/log/named/security.log" ვერსიები 3 ზომა; named/config.log" ვერსიები 3 ზომა 5 მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის გამხსნელი (ფაილი "/var/log/named/resolver.log" ვერსიები 3 ზომა 5 მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; არხი xfer-in (ფაილი "/var/log/ named/xfer-in.log" ვერსიები 3 ზომა 5m; სიმძიმის დინამიური; არხი xfer-out (ფაილი "/var/log/named). /xfer-out.log" ვერსიები 3 ზომა 5 მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის შეტყობინება (ფაილი "/var/log/named/notify.log" ვერსიები 3 ზომა 5 მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ ; /client.log" ვერსიები 5მ; სიმძიმის დინამიკა; ბეჭდვის დრო დიახ; ); არხი შეუსაბამოა (ფაილი "/var/log/named/unmatched.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის ქსელი (ფაილი "/var/log/named/network.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის განახლება (ფაილი "/var/log/named/update.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის განახლება-უსაფრთხოება ( ფაილი "/var/log/named/update-security.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის მოთხოვნები (ფაილი "/var/log/named/queries.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის მოთხოვნა-შეცდომები (ფაილი "/var/log/named/query-errors.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის გაგზავნა ( ფაილი "/var/log/named/dispatch.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის dnssec (ფაილი "/var/log/named/dnssec.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის lame-servers (ფაილი "/var/log/named/lame-servers.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის მხოლოდ დელეგირება (ფაილი "/var/log/named/delegation-only.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხი edns-disabled (ფაილი "/var/log/named/edns-disabled.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხი rpz (ფაილი "/var/log/named/rpz.log" ვერსიები 3 ზომა 5მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); არხის სიხშირე-ლიმიტი (ფაილი "/var/log/named/rate-limit.log" ვერსიები 3 ზომა 5 მ; სიმძიმის დინამიური; ბეჭდვის დრო დიახ; ); კატეგორია ნაგულისხმევი (ნაგულისხმევი;); კატეგორია ზოგადი(ზოგადი;); კატეგორიის მონაცემთა ბაზა ( მონაცემთა ბაზა; ); კატეგორია უსაფრთხოება (უსაფრთხოება; ); კატეგორია config(config;); კატეგორიის გამხსნელი (გამხსნელი;); კატეგორია xfer-in ( xfer-in; ); კატეგორია xfer-out ( xfer-out; ); კატეგორია შეატყობინეთ (შეატყობინე; ); კატეგორიის კლიენტი (კლიენტი; ); კატეგორია შეუსაბამო ( შეუსაბამო; ); კატეგორიის ქსელი ( ქსელი; ); კატეგორიის განახლება(განახლება;); კატეგორია განახლება-უსაფრთხოება ( განახლება-უსაფრთხოება; ); კატეგორიის მოთხოვნები ( queries; ); კატეგორია query-errors ( query-errors; ); კატეგორიის გაგზავნა ( dispatch; ); კატეგორია dnssec ( dnssec; ); კატეგორია lame-servers ( lame-servers; ); კატეგორია დელეგირება-მხოლოდ ( დელეგირება-მხოლოდ; ); კატეგორია edns-disabled ( edns-disabled; ); კატეგორია rpz ( rpz; ); კატეგორია განაკვეთი-ლიმიტი ( rate-limit; ); );

თუ გვინდა შევაგროვოთ ყველა მოთხოვნის ჟურნალი კატეგორიიდან შეკითხვებს, შემდეგ კონფიგურაციის ფაილის პარამეტრების განყოფილებაში თქვენ უნდა დაამატოთ პარამეტრი, რომელიც ამის საშუალებას იძლევა:

Querylog დიახ;

Bind გადატვირთეთ:

# systemctl გადატვირთეთ named-chroot.service

DNS სერვერის მუშაობის შემოწმება

უპირველეს ყოვლისა, მოდით გადავიდეთ დირექტორიაში ჟურნალებით და შეამოწმოთ რა გვაქვს იქ:

# cd /var/named/chroot/var/log/named # ls -l

ყველა ჟურნალის ფაილი შეიქმნა და იწყებს შევსებას. შეგიძლიათ შეამოწმოთ ერთი მათგანი. მაგალითად, ვნახოთ, როგორ აღრიცხავს ჩვენი centos სერვერი (192.168.7.246) მომხმარებლის მოთხოვნებს. შევეცადოთ გაუშვათ nslookup yandex.ru კომპიუტერიდან 192.168.7.254 (Windows) და ვნახოთ, როგორ აისახება იგი ჟურნალის ფაილში:

26-სექ-2015 19:25:30.923 კლიენტი 192.168.7.254#56374 (yandex.ru): შეკითხვა: yandex.ru IN A + (192.168.7.246) 26-სექ-2015 19:27.2015 19:27. 56375 (yandex.ru): შეკითხვა: yandex.ru IN AAAA + (192.168.7.246)

ახლა მოდით ping site1.ru შევამოწმოთ, თუ როგორ უჭერს მხარს სერვერი ჩვენს ზონას:

ვნახოთ, რა არის ჩანაწერებში:

26-სექ-2015 19:28:01.660 კლიენტი 192.168.7.254#49816 (site1.ru): შეკითხვა: site1.ru IN A + (192.168.7.246)

ეს ძალიან მოსახერხებელია თვალყური ადევნოთ სად მიდის კომპიუტერი. მაგალითად, შეგიძლიათ დროებით აამაღლოთ DNS სერვერი და ჩართოთ შეკითხვის ჟურნალი. კლიენტში მიუთითეთ ერთადერთი DNS სერვერი, რომელიც ჩვენ გვაქვს კონფიგურირებული. შემდეგ ჩვენ შეგვიძლია მივადევნოთ თვალი, მაგალითად, სად მიდის Windows ჩატვირთვის შემდეგ ჩვენი ცოდნის გარეშე. ან სად იტვირთება რეკლამები Skype-ზე. ყველა მოთხოვნა სწორად იქნება შედგენილი ფაილში, რომელიც შემდეგ შეიძლება ადვილად გაანალიზდეს და შემდეგ, მაგალითად, .

სულ ეს იყო, რისი თქმაც მინდოდა ამ მასალაში. Bind-ის დაყენების (დასახელებული) თემა საკმაოდ ვრცელია. იქნებ ისევ დავუბრუნდე.

ონლაინ კურსი "Linux Administrator"

თუ თქვენ გაქვთ სურვილი ისწავლოთ როგორ შექმნათ და შეინახოთ მაღალ ხელმისაწვდომი და საიმედო სისტემები, გირჩევთ გაეცნოთ ონლაინ კურსი "Linux Administrator" OTUS-ში. კურსი არ არის დამწყებთათვის, რომ დარეგისტრირდეთ, გჭირდებათ ქსელების საბაზისო ცოდნა და Linux-ის ინსტალაცია ვირტუალურ მანქანაზე. ტრენინგი გრძელდება 5 თვე, რის შემდეგაც კურსის წარმატებულ კურსდამთავრებულებს საშუალება ექნებათ გაიარონ გასაუბრება პარტნიორებთან. გამოცადეთ თქვენი თავი მისაღები გამოცდაზე და იხილეთ პროგრამა დამატებითი ინფორმაციისთვის.

ამ მასალაში შევეხები აქტუალურ თემას, რომლითაც იწყება თითქმის ნებისმიერი საწყისი სამუშაო სერვერთან. ძირითადი ქსელის პარამეტრების კონფიგურაცია CentOS-ში - ip მისამართი, dhcp, ipv6, dns, ჰოსტის სახელი, სტატიკური მარშრუტები, ქსელის ბარათები და სხვა ქსელის პარამეტრები. ჩვენ ეტაპობრივად გადავალთ თემაში მარტივიდან რთულამდე, განვიხილავთ ყველა ნიუანსს თანმიმდევრობით და ვუპასუხებთ ყველაზე პოპულარულ კითხვებს.

ქსელის პარამეტრები CentOS 7 სერვერზე

პირველად ვხვდებით CentOS სერვერის ქსელურ პარამეტრებს, როდესაც ვასრულებთ ინსტალაციას. საწყის დაყენების ეკრანზე არის ცალკე პუნქტი ქსელის ინტერფეისების დაყენებასთან დაკავშირებით:

მასში შესვლის შემდეგ, ჩვენ ვხედავთ დაკავშირებული ქსელის ბარათების ჩამონათვალს. თითოეული მათგანის ჩართვა შესაძლებელია შესაბამისი სლაიდერის გამოყენებით (პუნქტი 1 სურათზე). როდესაც ინტერფეისი გააქტიურებულია, ის ავტომატურად იღებს პარამეტრებს dhcp-ის საშუალებით. თქვენ შეგიძლიათ ნახოთ dhcp მუშაობის შედეგი. თუ არ ხართ კმაყოფილი ამ პარამეტრებით, შეგიძლიათ შეცვალოთ ისინი დაწკაპუნებით კონფიგურაცია(პუნქტი 3 სურათზე). აქ ასევე შეგიძლიათ დააყენოთ მასპინძლის სახელი(პუნქტი 2 სურათზე):


Ehernet დამატებითი პარამეტრების ფანჯრის გახსნით, შეგიძლიათ შეცვალოთ ქსელის ინტერფეისის სახელი, მიუთითოთ IP პარამეტრები (სურათზე 1 ელემენტი), აირჩიეთ მექანიკური პარამეტრები(პუნქტი 2 სურათზე), მივანიჭოთ ip მისამართი(პუნქტი 3 სურათზე), დააინსტალირეთ dns სერვერი(პუნქტი 4 სურათზე) და შეინახეთ ქსელის პარამეტრები (პუნქტი 5 სურათზე):


დარჩენილი პარამეტრების დასრულების შემდეგ, ინსტალაცია დაიწყება. ინსტალაციის შემდეგ გექნებათ სერვერი თქვენს მიერ მითითებული ქსელის პარამეტრებით.

ახლა განვიხილოთ სხვა სიტუაცია. თქვენ არ შეგიქმნიათ სერვერი და, შესაბამისად, ქსელის კონფიგურაცია, მაგრამ ახლა თქვენ უნდა ნახოთ ან შეცვალოთ იგი. სერვერის კონსოლი თქვენს განკარგულებაშია და ჩვენ მასში ვიმუშავებთ. თუ დააინსტალირეთ სადისტრიბუციო ნაკრებიდან მინიმალური, მაშინ როცა ცდილობთ ქსელის პარამეტრების ნახვას ბრძანების გამოყენებით ifconfigკონსოლში ნახავთ შემდეგს:

Bash: ifconfig: ბრძანება ვერ მოიძებნა

ან რუსულ ვერსიაში:

Bash: ifconfig ბრძანება ვერ მოიძებნა

ifconfig-თან და სხვა ქსელურ პროგრამებთან მუშაობისთვის საჭიროა პაკეტის ინსტალაცია ბადე-ინსტრუმენტები. მოდით გავაკეთოთ ეს:

# yum -y დააინსტალირე net-tools.x86_64

ახლა თქვენ შეგიძლიათ ნახოთ ქსელის პარამეტრები:

mtu 1500 inet 192.168.159.129 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX პაკეტები 319 ბაიტი 36709 (35.8 KiB) RX შეცდომები 0 დაშვებული 0 გადაჭარბება 0 ჩარჩო 0 TX პაკეტები 256 ბაიტი 7 14881 TX. 0 გადამზიდავი 0 შეჯახება 0 lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6::1 prefixlen 128 scopeid 0x10 loop txqueuelen 0 (Local Loopback) RX პაკეტები 6 ბაიტი 624 (624.0 B) RX შეცდომები 0 დაშვებული 0 გადაჭარბება 0 ჩარჩო 0 TX პაკეტი 6 ბაიტი 624 (624.0 B) TX შეცდომები 0 დაშვებული 0 გადაჭარბება

თუ არ გსურთ დამატებითი პაკეტის დაყენება, შეგიძლიათ გამოიყენოთ უფრო მარტივი ბრძანება ipპარამეტრებით:

# ip მისამართი 1: აი: mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft სამუდამოდ preferred_lft/ სამუდამოდ სასურველია_lft-ში 128 scope host valid_lft forever preferred_lft forever 2: eno16777728: mtu 1500 qdisc pfifo_fast state UP qlen 1000 ბმული/ეთერი 00:0c:29:7d:59:3f brd ff:ff:ff:ff:ff:ff inet 192.168.159.129 /24 brd 192.168.159.255 scope გლობალური დინამიური eno16777728 valid_lft 1709sec preferred_lft 1709sec inet6 fe80::20c:29ff:fe7d:593f/64 scope link preferever_lft სამუდამოდ

ჩვენ ვნახეთ ქსელის კონფიგურაცია, ახლა მოდით შევასწოროთ იგი. ვთქვათ, ჩვენ უნდა შევცვალოთ IP მისამართი. ამისათვის გადადით /etc/sysconfig/network-scripts დირექტორიაში და გახსენით ფაილი რედაქტირებისთვის. ifcfg-eth0. ამ ფაილს აქვს დაახლოებით შემდეგი შინაარსი:

ამ ფაილის პარამეტრების გამოყენებით, ჩვენ ვიღებთ IP მისამართს dhcp-ის საშუალებით. სტატიკური IP-ის ხელით დასარეგისტრირებლად, ჩვენ მივყავართ ფაილს შემდეგ შინაარსზე:

ჩვენ შევცვალეთ პარამეტრები:

ცვლილებების ძალაში შესვლისთვის საჭიროა ხელახლა წაიკითხოთ ქსელის პარამეტრები:

მიმდინარეობს ქსელის გადატვირთვა (systemctl-ის მეშვეობით): [OK]

შეამოწმეთ, გამოყენებულია თუ არა ახალი ქსელის კონფიგურაცია:

# ifconfig: eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 ქსელის ნიღაბი 255.255.255.0 გადაცემა 192.168.159.255 inet6 fe80::20c:29ff:fe7d:593f prefixlen 64 scopeid 0x20 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX პაკეტები 672 ბაიტი 71841 (70.1 KiB) RX შეცდომები 0 დაშვებული 0 გადაჭარბება 0 ჩარჩო 0 TX პაკეტები 572 ბაიტი 1B 29046 ზე მეტი (28046 TX) 0 გადამზიდავი 0 შეჯახება 0

ყველაფერი კარგადაა, დაინსტალირებულია ქსელის ინტერფეისის ახალი პარამეტრები.

როგორ მივიღოთ ქსელის პარამეტრები DHCP-ის საშუალებით

ახლა განვიხილოთ საპირისპირო სიტუაცია. ვთქვათ, თქვენს ქსელურ ბარათს აქვს რამდენიმე პარამეტრი ხელით დაყენებული. მაგრამ თქვენ გინდათ, რომ თქვენს კომპიუტერმა მიიღოს ქსელის პარამეტრები dhcp-ის მეშვეობით, როგორც კლიენტი. ამისათვის თქვენ უნდა შეასრულოთ საპირისპირო ოპერაცია, რაც ადრე გავაკეთეთ. ანუ გახსენით ფაილი /etc/sysconfig/network-scripts/ifcfg-eth0 და წაშალეთ ხაზები DNS, IPADDR, PREFIX, GATEWAY პარამეტრებით და BOOTPROTO პარამეტრში მიუთითეთ მნიშვნელობა. "dhcp". შეინახეთ ფაილი და გადატვირთეთ ქსელი:

# /etc/init.d/ქსელის გადატვირთვა

შემდეგ ვამოწმებთ, მიიღო თუ არა ჩვენმა კლიენტმა პარამეტრები dhcp-ის საშუალებით.

როგორ დააკონფიგურიროთ DNS CentOS 7-ში

მიმდინარე dns სერვერის პარამეტრები CentOS-ში შეგიძლიათ ნახოთ ორ ადგილას:

  1. ფაილში ქსელის ბარათის პარამეტრებით ifcfg-eth0, რომელიც ადრე რამდენჯერმე შევცვალეთ.
  2. ფაილში /etc/resolv.conf

რატომ არიან ისინი ახლა ორ ადგილას, არ ვიცი, მაგრამ ადრე, DNS სერვერის პარამეტრები ზოგიერთ დისტრიბუციაში, ზუსტად არ მახსოვს რომელი იყო მითითებული მხოლოდ resolv.conf-ში, მაგრამ რაღაც მომენტში ეს შეიცვალა. და ქსელის ყველა პარამეტრის შენახვა დაიწყო ერთ ფაილში მისამართთან, კარიბჭეთან, ნიღბთან და ა.შ. თუ ახლა დაარედაქტირეთ resolv.conf ფაილი და დაამატებთ სერვერის dns-ს, მაშინ გადატვირთვის შემდეგ ისინი შეიცვლება ifcfg-eth0 ფაილის მნიშვნელობებით.

ასე რომ, იმისათვის, რომ დააყენოთ DNS სერვერის პარამეტრები, თქვენ უნდა შეცვალოთ ifcfg-eth0 ქსელის პარამეტრების ფაილი, დაამატეთ იმდენი სერვერი, რამდენიც საჭიროა. მაგალითად ასე:

DNS1="192.168.159.2" DNS2="8.8.8.8" DNS3="8.8.4.4"

პარამეტრების გამოსაყენებლად, შეინახეთ ფაილი და გადატვირთეთ ქსელი, ყველაფერი ჩვეულ რეჟიმშია. სერვერის გადატვირთვის შემდეგ, dns პარამეტრები ჩაიწერება resolv.conf ფაილში

# cat /etc/resolv.conf # გენერირებულია NetworkManager nameserver 192.168.159.2 nameserver 8.8.8.8 nameserver 8.8.4.4

როგორ გამორთოთ ipv6 CentOS 7-ში

ამჟამად პროტოკოლის აქტიურ გამოყენებაშია ipv6არა და ეს არ არის საჭირო ნორმალურ მუშაობაში. მიუხედავად იმისა, რომ მრავალი წლის განმავლობაში გვეშინოდა, რომ პრაქტიკულად არ დარჩა უფასო IP მისამართები, სინამდვილეში ის მაინც საკმარისია ყველასთვის. ასე რომ, პრაქტიკული მიზეზების გამო, ipv6 ამჟამად არ არის საჭირო სერვერზე და შეიძლება გამორთოთ.

ipv6-ის გამორთვამდე, ყოველი შემთხვევისთვის, თქვენ უნდა შეამოწმოთ რომელი პროგრამები იყენებენ მას მუშაობაში. ეს აუცილებელია იმისათვის, რომ თავიდან ავიცილოთ შეცდომები მათ მუშაობაში, პირველ რიგში, გამორთეთ ipv6 კონფიგურაციებში. იმისათვის, რომ ნახოთ რა პროგრამებია დაკიდებული ipv6 ინტერფეისზე, გამოიყენეთ netstat ბრძანება:

# netstat -tulnp აქტიური ინტერნეტ კავშირები (მხოლოდ სერვერები) Proto Recv-Q Send-Q ლოკალური მისამართი უცხოური მისამართი სახელმწიფო PID/პროგრამის სახელი tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2317/master tcp 0 0.00. :22 0.0.0.0:* LISTEN 1333/sshd tcp6 0 0::1:25:::* LISTEN 2317/master tcp6 0 0:::22:::* LISTEN 1333/sshd udp 0 0.202:4. 0.0.0.0:* 694/avahi-daemon: r udp 0 0 0.0.0.0:123 0.0.0.0:* 715/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* hi-daemon/r. 0 127.0.0.1:323 0.0.0.0:* 715/chronyd udp6 0 0:::123:::* 715/chronyd udp6 0 0::1:323:::* 715/chronyd

ყველა ხაზი ::: არის ipv6 პროტოკოლით. ჩემს შემთხვევაში ეს არის sshd, postfix და chronyd. მოდით გამოვრთოთ მათთვის ipv6 და დავტოვოთ მხოლოდ ipv4.

დავიწყოთ sshd-ით. გახსენით პარამეტრების ფაილი /etc/ssh/sshd_config და იპოვეთ ხაზები:

#AddressFamily any #ListenAddress 0.0.0.0

მოდით გავაუქმოთ ისინი და შევცვალოთ ისინი. ეს ასე უნდა გამოიყურებოდეს:

AddressFamily inet ListenAddress 0.0.0.0

ახლა გახსენით პოსტფიქსის პარამეტრების ფაილი /etc/postfix/main.cf. ჩვენ ვეძებთ ხაზს იქ:

#inet_protocols = ყველა

შეცვლა:

Inet_protocols = ipv4

გამორთეთ ipv6 chronyd-ში. ამისათვის შექმენით ფაილი /etc/sysconfig/ ქრონიკულიდა დაამატეთ ხაზი:

OPTIONS=-4

ახლა ჩვენ გამორთეთ ipv6 CentOS-ში. გახსენით ფაილი /etc/ sysctl.confდა დაამატეთ ხაზები იქ:

Net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

/etc/sysconfig/ ფაილის რედაქტირება ქსელი, იქ ამატებს:

NETWORKING_IPV6=არა IPV6INIT=არა

გადატვირთეთ და შეამოწმეთ შედეგი:

# გადატვირთვა # ifconfig eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 ქსელის ნიღაბი 255.255.255.0 მაუწყებლობა 192.168.159.255 ეთერი 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet 230B34) შეცდომები 0 დაეცა 0 გადაჭარბება 0 ჩარჩო 0 TX პაკეტი 2138 ბაიტი 1327955 (1.2 MiB) TX შეცდომები 0 დავარდნა 0 გადალახვა 0 გადამზიდავი 0 შეჯახება 0 lo: flags=73 mtu 65536 inet 127.0.0.1 ქსელის ნიღაბი 255.0.0.0 loop txqueuelen 0 (Local Loopback) RX პაკეტები 0 ბაიტი 0 (0.0 B) RX შეცდომები 0 დაშვებული 0 გადაჭარბება 0 ჩარჩო 0 TX პაკეტი 0.00 ბაიტი 0 გადამზიდავი 0 შეჯახება 0

არსად არ არის ნახსენები inet6 და ipv6 ფორმატის მისამართები. ასე რომ, ყველაფერი კარგადაა, ჩვენ გამოვრთეთ ipv6 CentOS-ში. ახლა მოდით შევამოწმოთ ღია პორტების სია:

# netstat -tulnp აქტიური ინტერნეტ კავშირები (მხოლოდ სერვერები) Proto Recv-Q Send-Q ლოკალური მისამართი უცხოური მისამართი სახელმწიფო PID/პროგრამის სახელი tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2291/master tcp 0 0.00. :22 0.0.0.0:* LISTEN 1322/sshd udp 0 0 0.0.0.0:123 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0.0:5353 0.0.0.0.0:5353 0.0.0.0.0. 127.0.0.1:323 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:57259 0.0.0.0:* 697/avahi-daemon: r

ყველა პორტი არის ipv4. ყველაფერი რიგზეა, ჩვენი დავალება დასრულებულია.

როგორ შევცვალოთ ჰოსტის სახელი CentOS 7-ში

ნაგულისხმევად, ინსტალაციის დროს CentOS აყენებს ჰოსტის სახელს localhost.localdomain. თუ არ შეგიცვლიათ, შეგიძლიათ მოგვიანებით გააკეთოთ. პირველ რიგში, მოდით შევამოწმოთ რა ჰოსტის სახელი გაქვთ დაყენებული. ეს კეთდება კონსოლში ბრძანების გამოყენებით მასპინძლის სახელი, ან გამოყენებით უსახელო:

# ჰოსტის სახელი localhost.localdomain # uname -n localhost.localdomain

იმისათვის, რომ შეცვალოთ ჰოსტის სახელი CentOS-ში, საჭიროა ფაილის რედაქტირება /etc/hostname. მოდით შევამოწმოთ მისი შინაარსი:

# კატა /etc/hostname localhost.localdomain

მოდით დაარედაქტიროთ ეს ფაილი ჰოსტის სახელის შესაცვლელად:

# mcedit /etc/hostname centos.localhost

შეინახეთ ფაილი და შეამოწმეთ:

# მასპინძლის სახელი centos.localhost

არსებობს მზა ბრძანება, რომელიც დაუყოვნებლივ ადგენს საჭირო სერვერის სახელს:

# hostnamectl კომპლექტი ჰოსტის სახელი centos.localhost

ყველაფერი წესრიგშია, ჩვენ შევცვალეთ ჰოსტის სახელი centos.localhost

დააყენეთ ნაგულისხმევი კარიბჭე CentOS 7-ში

თუ რაიმე მიზეზით თქვენ არ დააყენეთ ნაგულისხმევი კარიბჭე ქსელის პარამეტრების დაყენებისას, შეგიძლიათ ამის გაკეთება ხელით. პირველ რიგში, მოდით შევამოწმოთ რომელი ნაგულისხმევი კარიბჭე არის ამჟამად დაინსტალირებული სისტემაში:

# netstat -nr ბირთვის IP მარშრუტიზაციის ცხრილი Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 149.154.71.254 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 149.020.7. 0 0 0 eth0 192.168.1.0 10.8.0.2 255.255 UG 0 0 0 tun0

ხაზი Destination 0.0.0.0 განსაზღვრავს კარიბჭის მისამართს. თუ ეს არ გაქვთ, ან არასწორი კარიბჭე დაყენებულია Gateway ველში, შეგიძლიათ შეცვალოთ ეს. დააყენეთ ნაგულისხმევი კარიბჭე:

მარშრუტი დაამატეთ ნაგულისხმევი gw 192.168.0.1

ქსელის მენეჯერი CentOS 7-ში

CentOS-ს ნაგულისხმევად აქვს სერვისი, რომელიც მართავს ყველა ქსელურ კავშირს - ქსელის მენეჯერი. ის მუდმივად აკონტროლებს ქსელის პარამეტრებს და კონფიგურაციის მართვის დემონის გამოყენებით, შესაბამის ცვლილებებს ატარებს აქტიურ ქსელურ მოწყობილობებში. იგი მხარს უჭერს სტანდარტულ ifcfg კონფიგურაციის ფაილებს.

ქსელის კომუნალური და აპლიკაციების სია:

მომხმარებლები პირდაპირ არ ურთიერთობენ NetworkManager-თან CentOS-ზე, ისინი იყენებენ გრაფიკულ და ბრძანების ხაზს. ერთ-ერთი ასეთი უტილიტაა სისტემის კონფიგურაციის ქსელის tui.

სისტემის კონფიგურაციის ქსელის tui CentOS 7-ში

CentOS-ში ქსელის პარამეტრების სამართავად, შეგიძლიათ გამოიყენოთ გრაფიკული პროგრამა nmtui. სისტემაში მისი არსებობის შემოწმება ძალიან მარტივია. უბრალოდ გაუშვით კონსოლში:

თუ არ გაქვთ დაინსტალირებული, მისი გამოსწორება ძალიან მარტივია. დააინსტალირეთ CentOS სისტემის კონფიგურაციის ქსელის tui:

# yum დააინსტალირე NetworkManager-tui

გამოყენებით ტუითქვენ შეგიძლიათ მიუთითოთ ნებისმიერი ქსელის პარამეტრი, რომელიც ადრე გავაკეთეთ ბრძანების ხაზის და კონფიგურაციის ფაილების რედაქტირების საშუალებით. მოდით გავაკეთოთ ეს. დარეკეთ პროგრამაში:

აირჩიეთ პირველი ელემენტი კავშირის რედაქტირება, შემდეგ აირჩიეთ ქსელის ინტერფეისი და დააწკაპუნეთ „რედაქტირება“:

აქ შეგვიძლია შევცვალოთ ქსელის ბარათის სახელი, mac მისამართი, მივუთითოთ ქსელის პარამეტრების ტიპი - სახელმძღვანელო ან dhcp, ხელით მივუთითოთ ip მისამართი, კარიბჭის მისამართი, dns სერვერი, დავამატოთ მარშრუტები და სხვა პარამეტრები:


რედაქტირების დასრულების შემდეგ შეინახეთ პარამეტრები OK-ზე დაწკაპუნებით.
თუ ირჩევთ ელემენტს კომუნალური პროგრამის პირველ ეკრანზე სისტემის ჰოსტის სახელის დაყენება, შეგიძლიათ სწრაფად მიუთითოთ ჰოსტის სახელი. შედეგი იქნება იგივე, რაც ადრე გავაკეთეთ კონსოლში.

როგორ დავამატოთ სტატიკური მარშრუტი CentOS 7-ში

CentOS-ზე მარშრუტიზაციის გასაკონტროლებლად, შეიძლება დაგჭირდეთ სტატიკური მარშრუტის დამატება. ამის გაკეთება საკმაოდ მარტივია კონსოლის ბრძანების გამოყენებით. პირველი, მოდით შევამოწმოთ არსებული მარშრუტები გამოყენებით netstat:

# netstat -nr ბირთვის IP მარშრუტიზაციის ცხრილი Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.159.000 no16777728

ამ შემთხვევაში, ჩვენ გვაქვს ერთი მარშრუტი 0.0.0.0/0.0.0.0 მისამართისთვის, კარიბჭე არის 192.168.159.2, რომელიც ასევე არის ნაგულისხმევი კარიბჭე. ანუ, არსებითად, არ არსებობს სტატიკური მარშრუტები. დავამატოთ ერთი მათგანი.

ვთქვათ, გვაქვს ქვექსელი 192.168.8.0 ნიღაბი 255.255.255.0, ტრაფიკი ამ ქვექსელში მარშრუტდება კარიბჭით 192.168.159.5 დაამატეთ მარშრუტი:

# მარშრუტის დამატება -net 192.168.8.0/24 gw 192.168.159.5

ჩვენ ვამოწმებთ, გამოჩნდა თუ არა დამატებული მარშრუტი მარშრუტიზაციის მაგიდა:

# netstat -nr ბირთვის IP მარშრუტიზაციის ცხრილი Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.8.0 192.168.8.0 19.2.5.2.5 0 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777728

ყველაფერი რიგზეა, მარშრუტი დამატებულია. მაგრამ გადატვირთვის შემდეგ ეს სტატიკური მარშრუტი წაიშლება. ამის თავიდან ასაცილებლად და დამატებული მარშრუტების შესანახად, თქვენ უნდა ჩაწეროთ ისინი სპეციალურ ფაილში. /etc/sysconfig/network-scripts საქაღალდეში შექმენით ფაილი ე.წ მარშრუტი-eth0შემდეგი შინაარსი:

# mcedit /etc/sysconfig/network-scripts/route-eth0 192.168.8.0/24 192.168.159.5 მეშვეობით

გადატვირთეთ და შეამოწმეთ არის თუ არა მარშრუტი ადგილზე:

# გადატვირთვა # netstat -nr ბირთვის IP მარშრუტიზაციის ცხრილი Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.1195.8. 5.0 UG 0 0 0 eno16777728 192.168.159.0 0.0 .0.0 255.255.255.0 U 0 0 0 eno16777728

ყველაფერი კარგადაა, დამატებულია სტატიკური მარშრუტი.

როგორ დააკონფიგურიროთ 2 IP მისამართი ერთ ინტერფეისზე

თუ საჭიროა კონფიგურაცია 2 IPმისამართები CentOS-ის ერთ ინტერფეისზე, შემდეგ ამის გაკეთება საკმაოდ მარტივია. მოდით გამოვიყენოთ ifconfig ბრძანება. პირველ რიგში, მოდით შევამოწმოთ ქსელის ინტერფეისების სია:

# ifconfig eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 ქსელის ნიღაბი 255.255.255.0 მაუწყებლობა 192.168.159.255 ეთერი 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet 3X1) შეცდომები 0 დაეცა 0 გადაფარვა 0 ჩარჩო 0 TX პაკეტები 204 ბაიტი 27658 (27.0 KiB) TX შეცდომები 0 ჩამოგდებული 0 გადაჭარბება 0 გადამზიდავი 0 შეჯახება 0 lo: flags=73

მოდით დავამატოთ კიდევ ერთი IP მისამართი 192.168.159.120 eno16777728 ინტერფეისს:

# ifconfig eno16777728:1 192.168.159.120 ზემოთ

მოდით შევამოწმოთ რა მოხდა:

# ifconfig eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 ქსელის ნიღაბი 255.255.255.0 მაუწყებლობა 192.168.159.255 ეთერი 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet 3X1) შეცდომები 0 დაეცა 0 გადაფარვა 0 ჩარჩო 0 TX პაკეტები 204 ბაიტი 27658 (27.0 KiB) TX შეცდომები 0 ჩამოგდებული 0 გადაჭარბება 0 გადამზიდავი 0 შეჯახება 0 eno16777728:1: flags=4163 mtu 1500 inet 192.168.159.120 netmask 255.255.255.0 მაუწყებლობა 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet=73) lo: mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 loop txqueuelen 0 (Local Loopback) RX პაკეტები 11 ბაიტი 940 (940.0 B) RX შეცდომები 0 დაშვებული 0 გადაჭარბება 0 ჩარჩო 010 TX0 pped 0 გადაჭარბება 0 გადამზიდავი 0 შეჯახება 0

ყველაფერი კარგადაა, ჩვენ დავამატეთ მეორე IP მისამართი იმავე ინტერფეისში. მაგრამ გადატვირთვის შემდეგ, დამატებითი მისამართი არ შეინახება. მის შესანახად, თქვენ უნდა შექმნათ ინტერფეისის პარამეტრების ფაილი /etc/sysconfig/network-scripts საქაღალდეში.

# mcedit /etc/sysconfig/network-scripts/ ifcfg-eno16777728:1 DEVICE=eno16777728:1 BOOTPROTO=სტატიკური IPADDR=192.168.159.120 NETMASK=255.255.255.0 ONBOOT=დიახ

შეინახეთ ფაილი, გადატვირთეთ და შეამოწმეთ რა მოხდა. მეორე IP მისამართი უნდა იყოს ადგილზე.

როგორ გავაკეთოთ ქსელის გადატვირთვა CentOS 7-ში

ამ საკითხს ადრე უკვე შევეხე, მაგრამ ყოველი შემთხვევისთვის ცალკე გავიმეორებთ. ვთქვათ, თქვენ შეიტანეთ გარკვეული ცვლილებები თქვენი ქსელის კონფიგურაციაში. როგორ გამოვიყენო ეს პარამეტრები სერვერის გადატვირთვის გარეშე? ძალიან მარტივი. ქსელის გადატვირთვისთვის CentOS-ში, უბრალოდ გამოიყენეთ ბრძანება:

# /etc/init.d/ქსელის გადატვირთვა

NetworkManager სერვისი ხელახლა წაიკითხავს ქსელის ყველა პარამეტრს და გამოიყენებს ცვლილებებს.

როგორ გავარკვიოთ IP მისამართი CentOS 7-ში

CentOS-ში მიმდინარე IP მისამართის სწრაფად გასარკვევად, თქვენ უნდა გამოიყენოთ შემდეგი ბრძანებები:

# ifconfig | grep inet inet 192.168.159.129 netmask 255.255.255.0 გადაცემა 192.168.159.255 inet 127.0.0.1 netmask 255.0.0.0

ან მეორე ვარიანტი ადგილობრივი IP მისამართის დასადგენად:

# IP მისამართი | grep inet inet 127.0.0.1/8 scope host lo inet 192.168.159.129 /24 brd 192.168.159.255 scope global eno16777728

ორივე ბრძანება საშუალებას გაძლევთ სწრაფად გაიგოთ თქვენი IP მისამართი.

რა უნდა გააკეთოს, თუ CentOS ვერ ხედავს ქსელის ბარათს?

თქვენ დააინსტალირეთ სერვერი, ჩატვირთეთ და აღმოაჩინეთ, რომ სისტემაში არც ერთი ქსელის ბარათი არ არის. რა უნდა გააკეთოს ამ შემთხვევაში? უპირველეს ყოვლისა, გადახედეთ dmesg ბრძანების გამოსავალს და მოძებნეთ თქვენი ბარათის მეხსიერება. ალბათ სისტემაშია, უბრალოდ არ არის გააქტიურებული. შეგიძლიათ მისი გააქტიურება გამოყენებით nmtui, რაც ზემოთ ვთქვი.

არის მენიუს ელემენტი კავშირის გააქტიურება, თქვენ უნდა შეხვიდეთ მასში და გაააქტიუროთ თქვენი ქსელის ბარათი. ამის შემდეგ შეგიძლიათ მისი კონფიგურაცია.

თუ თქვენი ქსელის ბარათი არ არის სისტემაში, მაშინ თქვენ უნდა მოძებნოთ ინტერნეტში ინფორმაცია ამ ქსელის ბარათის შესახებ მოდელის მიხედვით. ალბათ საცავებში იქნება დრაივერები. ეს საკმაოდ გავრცელებული სიტუაციაა. ყველაზე ხშირად, დრაივერები მოიძებნება და საჭიროა მათი სწორად დაყენება.

ჯერ კიდევ არსებობს შესაძლებლობა, რომ არ დაინახოთ თქვენი ბარათი ifconfig ბრძანების გამოსვლისას, თუ ქსელის სადენი არ არის ჩართული ამ ბარათში. ყველა ინტერფეისის სანახავად, თქვენ უნდა გამოიყენოთ -a შეცვლა:

# ifconfig -a

არსებობს კიდევ ერთი გზა სისტემაში ქსელის ბარათის მოსაძებნად. დააინსტალირეთ პაკეტი pciutils:

# yum -y დააინსტალირეთ pciutils

და შეხედეთ ბრძანების გამომავალს:

#lspci | grep Ethernet

თუ ქსელის ბარათი ხედავს სისტემას, მაშინ უნდა იყოს მსგავსი რამ:

02:00.0 Ethernet კონტროლერი: Intel Corporation 82545EM Gigabit Ethernet Controller (სპილენძი) (rev 01)

თუ გამომავალი ცარიელია, მაშინ ქსელის ბარათი არ არის განსაზღვრული.

რა უნდა გააკეთოს, თუ ქსელი მიუწვდომელია CentOS-ზე?

ვთქვათ, რომ ცდილობთ რაიმე მისამართის პინგს, მაგალითად 8.8.8.8 და მიიღებთ პასუხს, რომ ქსელი მიუწვდომელია:

#ping 8.8.8.8

და პასუხად მიიღებთ:

დაკავშირება: ქსელი მიუწვდომელია

ეს სიტუაცია შეიძლება წარმოიშვას, თუ არ გაქვთ დაყენებული ნაგულისხმევი კარიბჭე. თქვენ შეგიძლიათ დაამატოთ ის ბრძანების გამოყენებით:

# მარშრუტი დაამატეთ ნაგულისხმევი gw 192.168.0.1

თუ პრობლემა არ არის კარიბჭეში, მაშინ უნდა შეამოწმოთ ქსელის გადამყვანების პარამეტრები. თუ არ არის აქტიური ადაპტერი, მაშინ ასევე მიიღებთ შეტყობინებას, რომ ქსელი არ მუშაობს. აუცილებელია, რომ მინიმუმ ერთი ქსელის ადაპტერი სწორად იყოს კონფიგურირებული სისტემაში. როგორ გავაკეთოთ ეს ზემოთ დაწერილია.

ქსელის უტილიტების traceroute-ის გამოყენებით, გათხარეთ CentOS

CentOS-ში ქსელური კავშირების დიაგნოსტიკისთვის სასარგებლოა სპეციალური კომუნალური საშუალებების გამოყენება. მაგრამ თუ თქვენ იყენებდით მინიმალურ ინსტალაციას, მაშინ, სავარაუდოდ, ისინი არ იქნებიან სისტემაში. მაგალითად, პოპულარული პროგრამა ტრაკერუტი როდესაც თქვენ ცდილობთ მის გაშვებას, ის აჩვენებს შემდეგ შეტყობინებას:

# traceroute ya.ru bash: traceroute: ბრძანება ვერ მოიძებნა

ის უნდა დაინსტალირდეს საცავიდან ცალკე:

# yum -y დააინსტალირეთ traceroute

იგივე ეხება პოპულარულ პროგრამას გათხრა DNS სერვერებთან და ჩანაწერებთან მუშაობისთვის:

# dig ya.ru bash: dig: ბრძანება ვერ მოიძებნა

იმისათვის, რომ ამ ქსელის პროგრამამ იმუშაოს, თქვენ უნდა დააინსტალიროთ პაკეტი ბინდ-უტილს:

# yum -y დააინსტალირე bind-utils

802.1Q VLAN-ის კონფიგურაცია CentOS 7-ში

CentOS-ზე მონიშნული ინტერფეისის ასამაღლებლად, ჯერ უნდა შეამოწმოთ ბირთვის მხარდაჭერა 8021 ქ:

#modprobe8021q

თუ შეცდომის შეტყობინებები არ არის, მაშინ ყველაფერი რიგზეა, მოდული დატვირთულია. თუ მოდული ვერ მოიძებნა, თქვენ უნდა აღადგინოთ ბირთვის მოდულები, რაც საშუალებას მოგცემთ უზრუნველყოთ საჭირო მოდულის მხარდაჭერა. მოდით შევამოწმოთ, ყოველი შემთხვევისთვის, დატვირთულია თუ არა მოდული:

# lsmod | grep 8021q 8021q 29022 0 garp 14384 1 8021q mrp 18542 1 8021q

ყველაფერი კარგადაა, 8021q მოდული ჩატვირთულია, მოდით დავამატოთ გაშვებაში:

# echo 8021q >> /etc/modules-load.d/8021q.conf

ახლა შექმენით კონფიგურაციის ფაილი vlan-ისთვის /etc/sysconfig/network-scripts-ში:

#მცოდით ifcfg-eth0.2000 VLAN=დიახ DEVICE=eth0.2000 BOOTPROTO=სტატიკური ONBOOT=დიახ TYPE=Vlan IPADDR=192.168.100.2 NETMASK=255.255.255.0

თქვენს ყურადღებას ვამახვილებ იმაზე, რაც ხაზგასმულია თამამად. ინტერნეტის ყველა ინსტრუქციაში, რომელიც მე წავაწყდი, ეს პარამეტრი მითითებული იყო როგორც TYPE=Ethernet, მაგრამ ამ პარამეტრით vlan-თან ინტერფეისი არ გაიზარდა, გამოჩნდა შეცდომა:

შეცდომა: "System eth0.2000" კავშირისთვის მოწყობილობა ვერ მოიძებნა.

მხოლოდ მას შემდეგ რაც გავასწორე ყველაფერი ისე მუშაობდა, როგორც უნდა. ასე რომ, შეინახეთ და გააქტიურეთ ინტერფეისი:

# ifup eth0.2000 კავშირი წარმატებით გააქტიურდა (D-Bus აქტიური გზა: /org/freedesktop/NetworkManager/ActiveConnection/7)

ჩვენი vlan-ის შემოწმება:

# ip l ls 1: აი: mtu 65536 qdisc noqueue მდგომარეობა უცნობი რეჟიმი ნაგულისხმევი ბმული/დაბრუნება 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc pfifo_fast state UP რეჟიმი DEFAULT qlen 1000 ბმული/ეთერი 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff 3: eth0.2000@eth0: mtu 1500 qdisc noqueue status UP რეჟიმი DEFAULT ბმული/ეთერი 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff

ყველაფერი კარგადაა, მონიშნული ინტერფეისი ამუშავდა. ანალოგიით, თქვენ შეგიძლიათ შექმნათ კიდევ რამდენიმე მსგავსი ინტერფეისი, არ დაგავიწყდეთ მათი სახელების და მისამართების შეცვლა.

ამით დასრულდა ჩემი მოცულობითი მასალა CentOS-ში ქსელის დაყენების თემაზე. დიდი სიამოვნებით მივიღებ შენიშვნებს, შენიშვნებსა და შესწორებებს. ისინი ალბათ. ასეთი მასალების შექმნით, პირველ რიგში საკუთარ თავს ვსწავლობ და ვიუმჯობესებ ცოდნას საგნობრივ სფეროში. შეიძლება აქ სადმე იყოს შეცდომები და ბეჭდვითი შეცდომები, თუმცა სახელმძღვანელოების წერისას ყველაფერს ვამოწმებ ლაივ სისტემებზე, მაგრამ უზუსტობები და შეცდომები მაინც შესაძლებელია.

ონლაინ კურსი "Linux Administrator"

თუ თქვენ გაქვთ სურვილი ისწავლოთ როგორ შექმნათ და შეინახოთ მაღალ ხელმისაწვდომი და საიმედო სისტემები, გირჩევთ გაეცნოთ ონლაინ კურსი "Linux Administrator" OTUS-ში. კურსი არ არის დამწყებთათვის, რომ დარეგისტრირდეთ, გჭირდებათ ქსელების საბაზისო ცოდნა და Linux-ის ინსტალაცია ვირტუალურ მანქანაზე. ტრენინგი გრძელდება 5 თვე, რის შემდეგაც კურსის წარმატებულ კურსდამთავრებულებს საშუალება ექნებათ გაიარონ გასაუბრება პარტნიორებთან. გამოცადეთ თქვენი თავი მისაღები გამოცდაზე და იხილეთ პროგრამა დამატებითი ინფორმაციისთვის.

თქვენს ყურადღებას წარმოგიდგენთ გუნდის ახალ კურსს Codeby- "ვებ აპლიკაციების შეღწევადობის ტესტირება ნულიდან." ზოგადი თეორია, სამუშაო გარემოს მომზადება, პასიური ფუზირება და თითის ანაბეჭდი, აქტიური ფუზირება, მოწყვლადობები, პოსტ-ექსპლუატაცია, ინსტრუმენტები, სოციალური ინჟინერია და მრავალი სხვა.


დომენებს აქვთ მინიმუმ ორი DNS სერვერი, ერთს უწოდებენ პირველადი სახელების სერვერს (ns1) და მეორეს უწოდებენ მეორად სახელების სერვერს (ns2). მეორადი სერვერები ჩვეულებრივ გამოიყენება პირველად DNS სერვერთან დაკავშირებული პრობლემების შემთხვევაში: თუ ერთი სერვერი მიუწვდომელია, მეორე ხდება აქტიური. უფრო რთული სქემები ასევე შესაძლებელია დატვირთვის დაბალანსების, ფაიერვოლებისა და კლასტერების გამოყენებით.

ყველა DNS ჩანაწერი კონკრეტული დომენისთვის ემატება ძირითადი სახელების სერვერს. მეორადი სერვერი უბრალოდ სინქრონიზებს პირველადი სერვერიდან მიღებულ ყველა ინფორმაციას, პირველადი სერვერზე მითითებულ პარამეტრებზე დაყრდნობით.

ეს ინსტრუქცია აღწერს, როგორ შევქმნათ პირველადი DNS სერვერი, რომელიც მუშაობს CentOS-ზე. გთხოვთ გაითვალისწინოთ, რომ ამ სახელმძღვანელოში წარმოდგენილი DNS სერვერი იქნება საჯარო DNS, რაც ნიშნავს, რომ სერვერი უპასუხებს თხოვნას ნებისმიერი IP მისამართიდან. როგორ შეზღუდოთ სერვერზე წვდომა აღწერილია ამ სახელმძღვანელოში.

სანამ დავიწყებდეთ, მინდა აღვნიშნო, რომ DNS შეიძლება დაინსტალირდეს chroot jail გარემოში ან მის გარეშე. chroot jail გარემო ზღუდავს DNS სერვერს სისტემის კონკრეტულ დირექტორიაში, სერვერზე სისტემის სრული წვდომისგან განსხვავებით. ამ გზით, ნებისმიერი DNS სერვერის დაუცველობა არ დააზარალებს მთელ სისტემას. DNS სერვერის შეზღუდვა კონკრეტულ დირექტორიაში (პროცესი სახელწოდებით chrooting) ასევე სასარგებლოა სატესტო გარემოში.

სამიზნე

ჩვენ დავაყენებთ DNS სერვერს ტესტის პირობებში, მაგალითად.tst დომენისთვის, რომელიც არის ჰიპოთეტური (არარსებული) დომენი. ამ გზით, ჩვენ შემთხვევით არ ჩავერევით არცერთ რეალურ დომენში.

ამ დომენში არის სამი შემდეგი სერვერი.

სერვერი IP მისამართი მასპინძლობს სერვისები FQDN
სერვერი A 172.16.1.1 ფოსტა mail.example.tst
სერვერი B 172.16.1.2 ვებ, FTP www.example.tst
ftp.example.tst
სერვერი C 172.16.1.3 ძირითადი DNS სერვერი ns1.example.tst

ჩვენ დავაკონფიგურირებთ პირველადი DNS სერვერს და დავამატებთ საჭირო დომენს და DNS ჩანაწერებს, როგორც ნაჩვენებია ცხრილში.

ჰოსტების სახელების დაყენება

ყველა ჰოსტი სწორად უნდა იყოს იდენტიფიცირებული FQDN-ის მიხედვით. ეს შეიძლება გაკეთდეს შემდეგი მეთოდის გამოყენებით.

ვისაც გრაფიკული ინტერფეისი მოსწონს, შეუძლია გამოიყენოს NetworkManaget ინსტრუმენტები. ამისათვის ჩაწერეთ ბრძანება nmtui. გაიხსნება შემდეგი ფსევდოგრაფიკული ინტერფეისი:

აირჩიეთ „ჰოსტის სახელის შეცვლა“ და შეიყვანეთ ns1.example.tst

როცა მზად იქნება, დააწკაპუნეთ OK.

სხვა გზა, მხოლოდ ერთი ბრძანებით:

Hostnamectl set-hostname ns1.example.tst

ინსტალაციის შემდეგ, ჰოსტის სახელი შეიძლება შემოწმდეს შემდეგი ბრძანებით.

# ჰოსტის სახელი ns1.example.tst

Hostnamectl სტატუსი

სანამ შემდეგ ეტაპზე გადახვიდეთ, დარწმუნდით, რომ ყველა სერვერის ჰოსტის სახელი სწორად არის დაყენებული.

პაკეტების ინსტალაცია

ჩვენ გამოვიყენებთ bind-ს DNS-სთვის, რომლის დაყენებაც მარტივად შეიძლება yum ბრძანებით.

DNS-ის ინსტალაცია chroot-ის გარეშე:

# yum install bind

DNS-ის დაყენება chroot-ით:

# yum install bind bind-chroot

კონფიგურაციის ფაილების მომზადება

როგორც უკვე აღვნიშნეთ, bind-ის კონფიგურაცია შესაძლებელია chroot-ით ან მის გარეშე. ბილიკები ოდნავ განსხვავდება იმისდა მიხედვით, დაინსტალირებული იყო თუ არა chroot.

გზა კონფიგურაციის ფაილამდე ზონის ფაილების გზა
არა chroot /etc/ /var/named/
chroot-ით /var/named/chroot/etc/ /var/named/chroot/var/named/

შეგიძლიათ გამოიყენოთ named.conf კონფიგურაციის ფაილი, რომელიც მოწოდებულია ნაგულისხმევად. თუმცა, ჩვენ გამოვიყენებთ სხვა მაგალითის კონფიგურაციის ფაილს მარტივად გამოყენებისთვის.

/etc/named.conf ფაილის სარეზერვო ასლის გაკეთება

Cp /etc/named.conf /etc/named.conf.bak

# cp /usr/share/doc/bind-9.9.4/sample/etc/named.rfc1912.zones /etc/named.conf

# cp /usr/share/doc/bind-9.9.4/sample/etc/named.rfc1912.zones /var/named/chroot/etc/named.conf

ახლა, როდესაც არის კონფიგურაციის ფაილის სარეზერვო ასლი და თავად ორიგინალი ფაილი შეიცვალა, ჩვენ გადავდივართ.

# vim /etc/named.conf

# vim /var/named/chroot/etc/named.conf

შემდეგი სტრიქონები დამატებულია/შეცვლილია.

ოფციები (## გზა ზონის ფაილებისკენ ## დირექტორია "/var/named"; ## გადაგზავნის მოთხოვნა Google-ის საჯარო DNS სერვერზე არალოკალური დომენებისთვის ## გადამგზავნი ( 8.8.8.8; ); ); ## პირდაპირი ზონის დეკლარაცია, მაგალითად.tst ## ზონა "example.tst" IN ( ტიპი master; ფაილი "example-fz"; ## ფაილი პირდაპირი ზონისთვის მდებარეობს /var/named ## allow-update (არცერთი;); ## საპირისპირო ზონის დეკლარაცია ქსელისთვის 172.16.1.0 ## ზონა "1.16.172.in-addr.arpa" IN ( ტიპი master; ფაილი "rz-172-16-1"; ## ფაილი საპირისპირო ზონისთვის არის მდებარეობს /var / named ## allow-update ( none; );

ზონის ფაილების მომზადება

ნაგულისხმევი ზონის ფაილები ავტომატურად იქმნება /var/named ან /var/named/chroot/var/named (chroot-ისთვის).

თუ ვივარაუდებთ, რომ ნაგულისხმევი ზონის ფაილები არ არის, ჩვენ შეგვიძლია დავაკოპიროთ ფაილების ნიმუში /usr-დან.

# cp /usr/share/doc/bind-9.9.4/sample/var/named/named.* /var/named/

# cp /usr/share/doc/bind-9.9.4/sample/var/named/named.* /var/named/chroot/var/named

დიდი. ახლა ნაგულისხმევი ზონის ფაილები მზად არის, ჩვენ ვქმნით საკუთარ ზონის ფაილებს, მაგალითად.tst და ქსელის 172.16.1.0. სანამ ჩვენ ვქმნით ზონის ფაილებს, უნდა გვახსოვდეს შემდეგი.

  • სიმბოლო '@' ნიშნავს NULL ზონის ფაილებში.
  • ყოველი სრულად კვალიფიციური დომენის სახელი (FQDN) მთავრდება წერტილით '.'. mail.example.tst. წერტილის გარეშე, პრობლემები იქნება.

1. პირდაპირი ზონა

პირდაპირი ზონა შეიცავს თარგმანების რუკას სახელებიდან IP მისამართებამდე. საჯარო დომენებისთვის, ჰოსტინგის სერვისებზე განთავსებული DNS დომენები შეიცავს პირდაპირი ზონის ფაილს.

# vim /var/named/example-fz

# vim /var/named/chroot/var/named/example-fz $TTL 1D @ IN SOA ns1.example.tst. mial.example.tst. (0; სერიული 1D; განახლება 1H; ხელახლა სცადეთ 1W; ვადა 3H) ; მინიმალური IN NS ns1.example.tst. IN 172.16.1.3 ფოსტაში IN A 172.16.1.1 IN MX 10 mail.example.tst. www IN A 172.16.1.2 ns1 IN A 172.16.1.3 ftp IN CNAME www.example.tst.

ახსნა: ზონის ფაილში SOA ნიშნავს ავტორიზაციის დაწყებას. ეს არის ავტორიტეტული სახელების სერვერის სრულად კვალიფიციური დომენის სახელი. სრული დომენის სახელის შემდეგ არის საკონტაქტო ელექტრონული ფოსტის მისამართი. რადგან ჩვენ არ შეგვიძლია გამოვიყენოთ "@"-ში [ელფოსტა დაცულია], ჩვენ ხელახლა ვწერთ ელფოსტის მისამართს, როგორც mial.example.tst.

  • ნ.ს.: სერვერის სახელი
  • : ჩანაწერი ან მისამართის ჩანაწერი არის IP მისამართი
  • MX: ფოსტის გადამცვლელის ჩანაწერი. აქ ჩვენ ვიყენებთ მხოლოდ ერთ MX-ს პრიორიტეტით 10. რამდენიმე MX-ის შემთხვევაში შეგვიძლია გამოვიყენოთ სხვადასხვა ციფრული პრიორიტეტები. ქვედა რიცხვი იმარჯვებს. მაგალითად, MX 0 უკეთესია ვიდრე MX 1.
  • CNAME: სახელი კანონიკური ფორმით. თუ სერვერი მასპინძლობს ბევრ სერვისს, ძალიან სავარაუდოა, რომ მრავალი სახელი გადაწყდეს ერთ სერვერზე. CNAME მიანიშნებს, რომ სერვერს შეიძლება ჰქონდეს სხვა სახელები და მიუთითებს A ჩანაწერში მოცემულ სახელზე.

2. უკუ ზონა

საპირისპირო ზონა შეიცავს IP მისამართებიდან სახელებზე გადაყვანის რუკას. აქ ჩვენ ვქმნით საპირისპირო ზონას ქსელისთვის 172.16.1.0. რეალურ დომენში, საჯარო IP ბლოკის მფლობელის DNS სერვერი შეიცავს საპირისპირო ზონის ფაილს.

# vim /var/named/rz-172-16-1

# vim /var/named/chroot/var/named/rz-172-16-1 $TTL 1D @ IN SOA ns1.example.tst. sarmed.example.tst. (0; სერიული 1D; განახლება 1H; ხელახლა სცადეთ 1W; ვადა 3H) ; მინიმალური IN NS ns1.example.tst. 1 IN PTR mail.example.tst. 2 IN PTR www.example.tst. 3 IN PTR ns1.example.tst.

ახსნა: უკუ ზონაში გამოყენებული პარამეტრების უმეტესობა წინა ზონის იდენტურია, გარდა ერთისა.

  • PTR: PTR ან მაჩვენებლის ჩანაწერი, ის მიუთითებს დომენის სრულად კვალიფიციურ სახელზე

დასრულება

ახლა, როდესაც ზონის ფაილები მზად არის, ჩვენ დავაკონფიგურირებთ ზონის ფაილების გარჩევადობას.

# chgrp დასახელებული /var/named/*

# chgrp დასახელებული /var/named/chroot/var/named/*

ახლა ჩვენ დავაყენებთ DNS სერვერის IP მისამართს.

# vim /etc/resolv.conf სახელების სერვერი 172.16.1.3

საბოლოოდ, ჩვენ შეგვიძლია დავიწყოთ DNS სერვისი და დავრწმუნდეთ, რომ ის დაემატება ავტომატურ დაწყებას.

# სერვისი სახელად გადატვირთვა # chkconfig დასახელებულია

DNS ტესტირება

ჩვენ შეგვიძლია გამოვიყენოთ dig ან nslookup DNS-ის შესამოწმებლად. პირველ რიგში, ჩვენ დავაყენებთ საჭირო პაკეტებს.

# yum install bind-utils

1. პირდაპირი ზონის ტესტირება თხრილის გამოყენებით

# dig example.tst ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31184 ;; QUESTION SECTION: ;example.com. IN A ;; ANSWER SECTION: example.com. 86400 IN A 172.16.1.3 ;; AUTHORITY SECTION: example.com. 86400 IN NS ns1.example.com. ;; ADDITIONAL SECTION: ns1.example.com. 86400 IN A 172.16.1.3

2. შეამოწმეთ PTR თხრილის გამოყენებით

როდესაც იყენებთ თხრილს ტესტირებისთვის, ყოველთვის უნდა მოძებნოთ "NOERROR" სტატუსი. ნებისმიერი სხვა პირობა ნიშნავს, რომ რაღაც არასწორია.

# dig -x 172.16.1.1 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27415 ;; QUESTION SECTION: ;1.1.17.172.in-addr.arpa. IN PTR ;; ANSWER SECTION: 1.1.16.172.in-addr.arpa. 86400 IN PTR mail.example.tst. ;; AUTHORITY SECTION: 1.16.172.in-addr.arpa. 86400 IN NS ns1.example.tst. ;; ADDITIONAL SECTION: ns1.example.tst. 86400 IN A 172.16.1.3

3. MX-ის შემოწმება dig-ის გამოყენებით

# dig example.tst mx ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35405 ;; QUESTION SECTION: ;example.tst. IN MX ;; ANSWER SECTION: example.tst. 14366 IN MX 10 mail.example.tst.

პრობლემის გადაჭრის რჩევები

  1. მე გამორთული მაქვს SELinux.
  2. დარწმუნდით, რომ თქვენი firewall არ ბლოკავს UDP პორტს 53
  3. /var/log/messages უნდა შეიცავდეს სასარგებლო ინფორმაციას იმ შემთხვევაში, თუ რამე არასწორია
  4. დარწმუნდით, რომ ზონის ფაილების მფლობელი არის მომხმარებლის სახელი
  5. დარწმუნდით, რომ DNS სერვერის IP მისამართი ჩამოთვლილია პირველ რიგში /etc/resolv.conf-ში
  6. თუ იყენებთ example.tst-ს ლაბორატორიულ გარემოში, დარწმუნდით, რომ გათიშეთ სერვერი ინტერნეტიდან, რადგან example.tst არის არარსებული დომენი.

შეჯამებისთვის, ეს სახელმძღვანელო ფოკუსირებულია მაგალითი.tst დომენის ჰოსტინგი ლაბორატორიულ პარამეტრებში სადემონსტრაციო მიზნებისთვის. გახსოვდეთ, რომ ეს არ არის საჯარო DNS სერვერის შექმნის სახელმძღვანელო, როგორიცაა DNS სერვერი, რომელიც პასუხობს ნებისმიერი IP მისამართის თხოვნას. თუ თქვენ აყენებთ წარმოების DNS სერვერს, დარწმუნდით, რომ შეამოწმეთ რომელი წესები ვრცელდება საჯარო DNS-ზე. კიდევ ერთი გაკვეთილი მოიცავს მეორადი DNS-ის შექმნას, DNS სერვერზე წვდომის შეზღუდვას და DNSSEC-ის განხორციელებას.

გარანტი არის სანდო შუამავალი მონაწილეებს შორის გარიგების დროს.


DNS- დომენური სახელების სისტემა - განაწილებული სისტემა, რომელსაც შეუძლია მოთხოვნის შემთხვევაში მოახსენოს თავისი IP მისამართი, რომელიც შეიცავს ჰოსტის სახელს. DNS სტრუქტურა ჰგავს Linux ფაილურ სისტემას, მთელ მონაცემთა ბაზას აქვს ხის სტრუქტურა, რომლის ფესვი ზედაა (; . ). სწორედ წერტილიდან იწყება დომენის სახელების მთელი სისტემა. წერტილს შეიძლება მოჰყვეს ru, com, net, info და ა.შ. ძირიდან წარმოშობილი დომენები ე.ი. ru., კომ., ბადე.ეძახიან პირველი დონის დომენები, ვებსაიტის ტიპის დომენები. ეძახიან მეორე დონის დომენები, მაგრამ ფორმის file.site. - მესამე დონის დომენებიდა ასე შემდეგ. გაითვალისწინეთ პერიოდი მაგალითების ბოლოს. ამ გზით დაწერილ სახელებს უწოდებენ აბსოლუტურ სახელებს (FQDN). თუ წერტილი არ არის მითითებული, მაშინ სახელი განიხილება, როგორც ნათესავი. ანუ საიტი.

რატომ გამოვიყენოთ DNS?

1) წარმოიდგინეთ, რომ თქვენ გჭირდებათ წვდომა ქსელის რესურსზე სახელით მასპინძელი(ეს არის ფაილების სერვერი, რომელშიც ყველა თანამშრომლის ფაილი ინახება) სახელი მასპინძელიაქვს IPმისამართი არის 192.168.200.20 და თუ არ გაქვთ სერვისი, რომელიც გადააქცევს IP მისამართებს სახელებად, მაშინ უნდა აკრიფოთ IP მისამართი 192.168.200.20 ფაილ სერვერზე მისასვლელად. რა არის უფრო ადვილი დასამახსოვრებელი ჰოსტის სახელი ან ნომრების ნაკრები 192.168.200.20?

2) მეორე ვარიანტი ეხება ინტერნეტში წვდომას, მაგალითად თქვენ უნდა მოხვდეთ FTP სერვერზე ინტერნეტში სახელით ftp.site, ხოლო IP მისამართია 89.111.176.87.

ასე რომ, თუ პირველ ვარიანტში საერთოდ არ გჭირდებათ DNS სერვერის ინსტალაცია და კონფიგურაცია, მაგრამ შეგიძლიათ უბრალოდ სწრაფად დააყენოთ, მაგალითად, WINS სერვისი, მაშინ ის უბრალოდ გჭირდებათ ინტერნეტში შესასვლელად (ჩვენ არ მუდმივად გვახსოვდეს რიცხვები, როდესაც ვცდილობთ ინტერნეტში რაიმე რესურსზე წვდომას). კიდევ ერთი კითხვაა, გჭირდებათ თუ არა მისი კონფიგურაცია, თუ პროვაიდერმა მოგაწოდათ საკუთარი DNS სერვერები?

DNS სერვერი შეიძლება გამოყენებულ იქნას როგორც: პირველადი და მეორადი, რეკურსიული და შეკითხვის გადამყვანი.

პირველადი(მასტერი) ატვირთავს მონაცემებს ზონისთვის სერვერის აპარატის ფაილიდან, ხოლო მეორადი (მონა) იღებს მონაცემებს პირველადი DNS-დან. DNS სერვერი შეიძლება იყოს პირველადი ერთი ზონისთვის და მეორადი მეორესთვის.

რეკურსიული სერვერიშექმნილია დიდ ორგანიზაციებში მაღალსიჩქარიანი ქსელური კავშირებით. ის არ არის მიბმული პროვაიდერის სერვერებთან, არის მოქნილი და უსაფრთხო.

მოითხოვეთ გადამყვანიაგზავნის მოთხოვნას კლიენტისგან პროვაიდერის სერვერზე. პროვაიდერის სერვერი ამუშავებს კლიენტის ბევრ მოთხოვნას, აქვს დიდი ქეში და მაღალსიჩქარიანი კავშირი.

ძირითადი DNS ჩანაწერები.

A - მიმოწერა სახელსა და IP მისამართს შორის
AAAA - მიმოწერა სახელსა და IPv6 მისამართს შორის
CNAME - კანონიკური სახელი (სინონიმი)
MX - მიუთითებს ამ დომენის ფოსტის სერვერზე
NS - DNS სერვერი დომენისთვის
PTR - კანონიკური სახელი
SOA არის საწყისი ჩანაწერი, რომელიც მიუთითებს იმაზე, თუ სად ინახება ინფორმაცია სერვერის შესახებ.
SRV - სერვერები სერვისებისთვის.

მიმდინარეობს BIND-ის ინსტალაცია.
ჩვენ დავაინსტალირებთ BIND-ს centOs5-ზე.
აქვს სერვერი სახელად ns1..168.200.1

yum install bind

პარამეტრები BIND
შექმენით და შეავსეთ კონფიგურაციის ფაილი

vi /var/named/chroot/etc/named.conf

პარამეტრები (
დირექტორია "/var/named/";
dump-ფაილი "/var/run/named_dump.bd";
სტატისტიკა-ფაილი "/var/run/named.stats";
};
ზონა "საიტი" in (
ტიპის master;
ფაილი "site.db";
};
ზონა "200.168.192.IN-ADDR.ARPA." IN (
ტიპის master;
ფაილი "192.168.200.db";
};

ზონა "0.0.127.IN-ADDR.ARPA." IN (
ტიპის master;
ფაილი "127.0.0.db";
};

ზონა "." (
ტიპის მინიშნება;
ფაილი "named.ca";
};

ჩვენ ვქმნით ზონის ფაილებს site.db, 192.168.0.db, 127.0.0.db, named.ca.

vi /var/named/chroot/var/named/site.db# პირდაპირი ზონა სახელების მისამართებზე დასახატად.

$TTL 1H ; 1 საათი
IN SOA ვებსაიტზე ns1.site. root.site (22
3სთ
1სთ
1 W
1 სთ)

; სახელების სერვერები
ნ.ს. ns1.site

კაკონური სახელებისთვის
ns1.site. 1 სთ-ში ა 192.168.200.1
host1.site. IN 1H A 192.168.200.154
; მეტსახელები
gw1.site. IN 1H CNAME host1.site.
www.site. IN 1H CNAME host1.site.

vi /var/named/chroot/var/named/192.168.200.db# საპირისპირო ზონა სახელებზე მისამართების შესატანად.

$TTL 3600; 1 საათი
200.168.192.in-addr.arpa IN SOA ns1.site. root.site (21
3სთ
1სთ
1 W
1 სთ)
; სახელების სერვერები
200.168.192.in-addr.arpa IN NS ns1.site

; კანონიკური სახელები
1.200.168.192.in-addr.arpa PTR ns1.site.
154.200.168.192.in-addr.arpa PTR host1.site.

vi /var/named/chroot/var/name/127.0.0.db# loopback მისამართი პაკეტების საკუთარ თავს გასაგზავნად.

$TTL 3600; 1 საათი
0.0.127.in-addr.arpa IN SOA ns1.site. root.site (21
3სთ
1სთ
1 W
1 სთ)

0.0.127.in-addr.arpa IN NS ns1.site
0.0.127.in-addr.arpa. PTR ლოკალჰოსტში.

vi /var/named/chroot/var/named/named.ca#root სერვერები

A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
;
; ადრე NS1.ISI.EDU
;
. 3600000 NS B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET. 3600000 A 192.228.79.201
;
; ადრე C.PSI.NET
;
. 3600000 NS C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12
;
; ადრე TERP.UMD.EDU
;
. 3600000 NS D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90
;
; ადრე NS.NASA.GOV
;
. 3600000 NS E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10
;
; ადრე NS.ISC.ORG
;
. 3600000 NS F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241
;
; ადრე NS.NIC.DDN.MIL
;
. 3600000 NS G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4
;
; ადრე AOS.ARL.ARMY.MIL
;
. 3600000 NS H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53
;
; ადრე NIC.NORDU.NET
;
. 3600000 NS I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17
J.ROOT-SERVERS.NET. 3600000 A 192.58.128.30
;
; მართავს RIPE NCC
;
. 3600000 NS K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129
;
; მართავს ICANN
;
. 3600000 NS L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET. 3600000 A 198.32.64.12
;
; მართავს WIDE
;
. 3600000 NS M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33
; ფაილის დასასრული

სერვერის გაშვება და გაჩერება/etc/init.d/named (დაწყება გაჩერება გადატვირთვა)
DNS ტესტირების საშუალებები: მასპინძელი, nslookup, dig.
უფრო დეტალური DNS პარამეტრებისთვის წაიკითხეთ man bind, DNS და BIND წიგნი და ა.შ.



რაიმე შეკითხვა?

შეატყობინეთ შეცდომას

ტექსტი, რომელიც გაეგზავნება ჩვენს რედაქტორებს: