السير الذاتية صفات تحليل

Centos تعطيل ipv6. ماذا تفعل إذا كانت الشبكة غير متوفرة في CentOS؟ ماذا تفعل إذا كان CentOS لا يرى بطاقة الشبكة

بدءًا من EL6 ، قرر بائع البرنامج إزالة boot.iso من دليل / images وشحنه كوسائط مستقلة منفصلة. نظرًا لحجم هذه الصورة الكبير ، قررنا أن نفعل الشيء نفسه. على هذه اللحظةتسمى صورة قرص تثبيت الشبكة netinstall.iso وهي موجودة في دليل isos / مع بقية صور التثبيت.

2. لماذا أحتاج إلى تسجيل الدخول واستخدامه بنفسي حتى تعمل بطاقة شبكة Ethernet الخاصة بي؟

ولماذا ، عند مقارنتها بالممارسة الشائعة ، يتم تسمية أسماء واجهات الشبكة بـ "خطأ"؟ بعد كل شيء ، هذا ينتهك قاعدة Unix "لا تغير التوقعات".

أضاف بائع البرنامج NetworkManager إلى التكوين الافتراضي ، وواجهات الشبكة (بطريقة لا يمكن تفسيرها) غير نشطة افتراضيًا. يمكن تصحيح ذلك أثناء عملية التثبيت في المرحلة عندما يطلب منك المثبت تكوين اللغة / لوحة المفاتيح / التخزين / البرنامج في نافذة المثبت الرئيسية ، مما يجعل بطاقة الشبكة الخاصة بك نشطة. للقيام بذلك ، تحتاج إلى النقر فوق "اسم الشبكة والمضيف" ، وتحديد اتصال شبكة Ethernet الذي تريد تغييره ، ثم النقر فوق الزر "إيقاف" في الزاوية اليمنى العليا. بافتراض أنه يمكنك استخدام DHCP ، فإن اتصال الشبكة الخاص بك سوف ينتقل إلى حالة الحصول على عنوان الشبكة. إذا كنت تريد تكوين إعدادات الشبكة يدويًا ، فانقر على "تكوين" ، ثم أدخل واحفظ القيم المرغوبة. لكي تصبح التغييرات سارية المفعول ، سيكون من الضروري على الأرجح تعطيل واجهة الشبكة المكونة حديثًا ثم تمكينها. انقر فوق تم. بالإضافة إلى الطريقة المذكورة أعلاه ، يمكن تكوين اتصال الشبكة بعد التثبيت باستخدام "NetworkManager" (الموجود في "النظام ؛ التفضيلات ؛ اتصالات الشبكة" ، أو انقر بزر الماوس الأيمن على أيقونة الشبكة الصغيرة في منطقة الإعلام ، ثم - "تحرير الاتصالات ").

إذا كنت لا تستخدم NetworkManager ، فيمكن تحقيق نفس النتيجة عن طريق تغيير ملف التكوين لواجهة الشبكة المقابلة (عادةً / etc / sysconfig / network-scripts / ifcfg-eth0): "ONBOOT = no" to "ONBOOT = نعم ". إذا كنت تستخدم DHCP ، فقد تحتاج إلى إضافة السطر "BOOTPROTO = dhcp". قد يتطلب عنوان IP الثابت "BOOTPROTO = ثابت".

بافتراض أن اسم جهاز الشبكة هو eth0 ، يمكن تغيير خط ONBOOT (كجذر) على النحو التالي:

# cd / etc / sysconfig / network-scripts / # sed -i -e " [البريد الإلكتروني محمي]^ ONBOOT = " [البريد الإلكتروني محمي]="[البريد الإلكتروني محمي]"ifcfg-eth0

بخصوص "التوقعات المتغيرة": يستخدم المثال السابق التسمية "التقليدية" لواجهة الشبكة: eth0. ومع ذلك ، من الممكن أيضًا استخدام أسماء أخرى ، مثل em1, p3p1إلخ ، سواء أعجبك ذلك أم لا ، فإن مفهوم التسمية هذا هو تطور إضافي لنظام Linux. تم وصف هذا سابقًا في "توزيع الاختبار" لمورد البرنامج. راجع أيضًا كتابة Dell ومشاركة المدونة

3. ماذا لو أردت إعادة التسمية القديمة؟

هناك 3 خطوات ضرورية لهذا:

  • إضافة "inet.ifnames = 0" و "biosdevname = 0" معلمات kernel لمحمل التمهيد grub ؛
  • قم بتغيير ملف التكوين لواجهة الشبكة الموجودة في / etc / sysconfig / network-scripts / بإعادة تسميته إلى "ifcfg-ethX" ؛
  • في حال كان لديك عدة واجهات شبكة وتريد التحكم في تسمية كل واحدة بدلاً من السماح للنواة بالقيام بذلك ، استبدل /usr/lib/udev/rules.d/60-net.rules بـ / etc / udev / rules.d /60- net.rules

4. لكني فقط بحاجة إلى كل شيء للعمل ولأكون قادرًا على تغيير ملفات التكوين يدويًا

لا تحتاج معظم عمليات التثبيت إلى التعقيد المفرط للتفاعل مع NetworkManager ، فقط التغيير اليدويملفات التكوين. يوجد أدناه مقتطف لتكوين واجهة شبكة باستخدام DHCP بدون NetworkManager:

# cat / etc / sysconfig / network-scripts / ifcfg-eth0 DEVICE = "eth0" BOOTPROTO = dhcp NM_CONTROLLED = "لا" PERSISTENT_DHCLIENT = 1 ONBOOT = "نعم" TYPE = Ethernet DEFROUTE = نعم PEERDNS = نعم PEERROUTES = نعم IPV6INIT = نعم IPV6_AUTOCONF = نعم IPV6_DEFROUTE = نعم IPV6_PEERDNS = نعم IPV6_PEERROUTES = نعم IPV6_FAILURE_FATAL = لا NAME = "eth0" #

أو الإعداد المعتاد باستخدام "الإحصائيات":

$ cat / etc / sysconfig / network-scripts / ifcfg-eth0 DEVICE = "eth0" HWADDR = "00: 21: 70: 10: 7E: CD" NM_CONTROLLED = "لا" ONBOOT = "نعم" BOOTPROTO = ثابت # BOOTPROTO = dhcp IPADDR = 10.16.1.106 NETMASK = 255.255.255.0 # # تكون البوابة أحيانًا في: / etc / sysconfig / network GATEWAY = 10.16.1.1

وبعد ذلك يمكنك إضافة خصائص عامة أخرى ، مثل اسم المضيف أو خوادم DNS:

$ cat / etc / sysconfig / network HOSTNAME = acme.example.com DNS1 = 10.16.1.112 DNS2 = 8.8.8.8 ## DNS2 = 76.242.0.28 SEARCH = example.com

هذه المعلمات اختيارية لأن يمكن لخادم DHCP نفسه التعامل معها. initscriptيمكن لـ -s تحديد إعدادات مثل اسم الكمبيوتر باستخدام سجلات PTR في بيئة DNS تم تكوينها بشكل صحيح ، ولكن قد يحتاج بعض المستخدمين إلى تغيير الإعدادات يدويًا. يمكن العثور على الوثائق الكاملة حول initscripts من خلال:

Rpm -qd initsscripts

حتى في بيئة لا يوجد فيها رجل-الحزمة وتوابعها.

5. كيفية تعطيل IPv6؟

يوصي أحد موظفي بائع البرامج بترك وحدة IPv6 ممكّنة ، لأن قد يؤثر التعطيل على عمل SELinux والمكونات الأخرى. بدلاً من ذلك ، يُقترح إضافة الأسطر التالية إلى /etc/sysctl.conf:

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

ولتعطيل IPv6 على نظام قيد التشغيل:

صدى 1> / proc / sys / net / ipv6 / conf / all / disable_ipv6 echo 1> / proc / sys / net / ipv6 / conf / default / disable_ipv6

sysctl -w net.ipv6.conf.all.disable_ipv6 = 1 sysctl -w net.ipv6.conf.default.disable_ipv6 = 1

ملاحظة 1: مع تعطيل IPv6 ، قد تكون هناك مشاكل في إعادة توجيه X عبر ssh. لحل هذا ، تحتاج إلى التغيير / etc / ssh / sshd_configعلى النحو التالي: إما التغيير

#AddressFamily أي

العنوان

(يتطابق "inet" مع "ipv4 فقط" ، ويطابق "inet6" ipv6)

أو قم بإزالة علامة "#" قبل السطر

#ListenAddress 0.0.0.0

وإعادة تشغيل ssh

ملاحظة 2: إذا بدأ Postfix مع تعطيل IPv6 ، فقم بتغيير /etc/postfix/main.cf - قم بالتعليق على جزء "المضيف المحلي" واستبدله بـ ipv4 loopback:

# inet_interfaces = المضيف المحلي inet_interfaces = 127.0.0.1

أو قم بإزالة السطر الذي يحتوي على IPv6 localhost من الملف / etc / hosts.

ملاحظة 3: لتعطيل RPCBIND ipv6 (rpc ، rpc.mountd ، rpc ، statd) ، قم بالتعليق خارج سطور "udp6" و "tcp6" في ملف / etc / netconfig:

Udp tpi_clts v inet udp - - tcp tpi_cots_ord v inet tcp - - # udp6 tpi_clts v inet6 udp - - # tcp6 tpi_cots_ord v inet6 tcp - - rawip tpi_raw - inet - - tpi_cots_ord - loixback - loixback - -

6. أين يمكنني تنزيل الإصدار 32 بت؟

يوجد الإصدار 32 بت من CentOS 7 هنا: http://mirror.centos.org/altarch/7/isos/i386/

7. أين ذهب ifconfig / netstat؟

لأن خدمات ifconfigو netstatمنذ أن تم وضع علامة على صفحات الدليل الخاصة بـ CentOS-5 و CentOS-6 على أنها مهملة لأكثر من عقد ، اتخذ RedHat قرارًا بعدم تعيين حزمة net-tool افتراضيًا إلى CentOS-7. أحد أسباب ذلك ، على سبيل المثال ، هو أن ifconfig لا يعرض جميع المعلومات الموجودة على عنوان IP للواجهة - استخدم الأمر "ip" بدلاً من ذلك. المرافق التي جاءت في المقابل هي "ss" و "ip". ومع ذلك ، إذا كنت حقًا بحاجة إلى الأدوات المساعدة ifconfig و netstat ، فيمكنك تثبيت حزمة أدوات net: yum install net-tools.

IPv6 أو الإصدار 6 من بروتوكول الإنترنت هو أحدث إصدار من بروتوكول الإنترنت (IP). يتم بالفعل استخدام الإصدار 4 من IPv4 أو بروتوكول الإنترنت على نطاق واسع. لكن لديها بعض القيود. الأول هو أن IPv4 يحتوي على نظام عناوين 32 بت. هذا يعني أن 4.3 مليار عنوان فريد فقط ممكن مع IPv4. هذا محدود للغاية في عالم اليوم. لدينا في هذه الأيام العديد من أجهزة إنترنت الأشياء (IoT) ، والهواتف الذكية ، وأجهزة الكمبيوتر ، وأجهزة الكمبيوتر المحمولة ، والخوادم المتصلة بالإنترنت. يحتاج كل جهاز من هذه الأجهزة إلى عنوان IP للتواصل مع العالم الخارجي. لذا فإن عنوان IPv4 يعاني من نقص.

عنوان IPv6 بتنسيق الأخرىاليد هو عنوان 128 بت. هذا يعني أن هناك حوالي 340،282،366،920،938،463،463،374،607،431،768،211،456 عنوان IPV6 فريد ممكن في IPv6. هذا عدد كبير من عناوين IP. يقال أنه إذا تم استخدام IPv6 ، فسيتم استخدام كل جهاز على حدة العالميمكن أن يكون له عنوان IPv6 الفريد الخاص به وسيظل IPv6 متاحًا للأجهزة الجديدة. لذا يحل IPv6 المشكلات المتعلقة بعنوان IP المحدود كما هو الحال في IPv4.

ولكن في وقت كتابة هذا التقرير ، لا يتوفر دعم IPv6 في العديد من البلدان. إنه غير مدعوم حتى في بلدي. على الرغم من أن العالم ينتقل إلى IPv6 ببطء ، إلا أن ليس كل شيء هو IPv6.

إذا لم يكن بلدك يدعم IPv6 حتى الآن ، فلا داعي لإبقائه ممكّنًا على نظام التشغيل الخاص بك. يميل الكثير من الأشخاص إلى تعطيل IPv6 في نظام التشغيل الخاص بهم.

في هذه المقالة ، سأوضح لك كيفية تعطيل IPv6 على CentOS 7.5. هيا بنا نبدأ.

تحقق مما إذا كان IPv6 ممكّنًا

يمكنك التحقق مما إذا كان IPv6 ممكّنًا على نظام التشغيل CentOS 7.5 لديك باستخدام الأمر التالي:

$ ip a | grep inet6

كما ترى ، لقد تم تمكين IPv6.

إذا تم تعطيل IPv6 ، فلن ترى أي إخراج إذا قمت بتشغيل هذا الأمر.

قم بتعطيل IPv6 باستخدام معلمة Kernel

في هذا القسم ، سأوضح لك كيفية تعطيل IPv6 بشكل دائم.

يمكنك تعطيل IPv6 عندما يقوم الكمبيوتر بالتمهيد عن طريق تغيير معلمة kernel.

قم أولاً بتحرير تكوين GRUB

sudo vim / etc / default / grub

يجب أن ترى النافذة التالية.

الضغط الأول أناللذهاب الى إدراجوضع.

أضف الآن ipv6.disable = 1قبل كراش كيرنيل = تلقائيفي GRUB_CMDLINE_LINUXكما هو موضح في لقطة الشاشة أدناه.

الآن اضغط واكتب : wq!ثم اضغط لحفظ الملف.

الآن قم بتحديث ملف تكوين GRUB بالأمر التالي:

$ sudo grub2-mkconfig -o / boot / grub2 / grub.cfg

يجب تحديث تكوين GRUB.

أعد تشغيل الكمبيوتر الآن باستخدام الأمر التالي:

sudo إعادة التشغيل

إذا قمت بتشغيل الأمر التالي مرة أخرى ، فمن المفترض ألا ترى أي إخراج.

$ ip a | grep inet6

قم بتعطيل IPv6 باستخدام ملف التكوين /etc/sysctl.conf

يمكنك أيضًا تعطيل IPv6 بشكل دائم باستخدام امتداد /etc/sysctl.confملف الضبط.

قم أولاً بفتح ملف /etc/sysctl.confملف بالأمر التالي:

الآن أضف الأسطر التالية إليه:

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

الآن احفظ الملف وأعد تشغيل جهاز الكمبيوتر الخاص بك باستخدام الأمر التالي:

sudo إعادة التشغيل

يجب تعطيل IPv6.

قم بتعطيل IPv6 لواجهة شبكة معينة

يمكنك أيضًا تعطيل IPv6 لواجهة شبكة معينة.

أولاً ، يجب عليك العثور على واجهة الشبكة التي تريد تعطيلها باستخدام الأمر التالي:

عرض رابط ip $

يجب أن ترى اسم واجهة الشبكة كما هو موضح في لقطة الشاشة أدناه.

لنفترض أنك تريد تعطيل IPv6 من أجل إنست 36واجهه المستخدم.

أول فتح /etc/sysctl.confملف بالأمر التالي:

sudo vim /etc/sysctl.conf $

أضف الآن السطر التالي إلى نهاية الملف:

net.ipv6.conf.ens36.disable_ipv6 = 1

قم بتعطيل IPv6 مؤقتًا باستخدام أمر sysctl

يمكنك أيضًا تعطيل IPv6 مؤقتًا. بهذه الطريقة سيتم تمكين IPv6 بمجرد إعادة تشغيل نظامك. يعد هذا أمرًا جيدًا لاختبار ما إذا كان كل شيء على نظام التشغيل CentOS 7.5 يعمل قبل تعطيل IPv6 بشكل دائم.

قم بتشغيل الأوامر التالية لتعطيل IPv6 مؤقتًا:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6 = 1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6 = 1

يجب تعطيل IPv6.

هذه هي الطريقة التي تقوم بتعطيل IPv6 على CentOS 7.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 إنت 192.168.159.129 ether 00: 0c: 29: 7d: 59: 3f txqueuelen 1000 (Ethernet) RX packets 319 bytes 36709 (35.8 KiB) أخطاء RX 0 مسقطة 0 تجاوزات 0 إطار 0 حزم TX 256 بايت 148817 (145.3 كيلوبايت) أخطاء TX 0 إسقاط 0 تجاوزات 0 حاملة 0 تصادم 0 lo: أعلام = 73 mtu 65536 إنت 127.0.0.1 قناع الشبكة 255.0.0.0 inet6 :: 1 prefixlen 128 نطاق النطاق 0x10 حلقة txqueuelen 0 (الاسترجاع المحلي) حزم RX 6 بايت 624 (624.0 B) أخطاء RX 0 إسقاط 0 تجاوزات 0 إطار 0 حزم TX 6 بايت 624 (624.0 B) أخطاء TX 0 مسقطة 0 تجاوزات 0 ناقل 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 inet 127.0.0.1/8 النطاق المضيف lo valid_lft fever_lft forever inet6 :: 1 / 128 نطاق مضيف valid_lft مفضل للأبد للأبد 2: eno16777728: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link / ether 00: 0c: 29: 7d: 59: 3f brd ff: ff: ff: ff: ff: ff inet 192.168.159.129 / 24 brd 192.168.159.255 النطاق الديناميكي العالمي eno16777728 valid_lft 1709sec Favorites_lft 1709sec inet6 fe80 :: 20c: 29ff: fe7d: 593f / 64 نطاق الارتباط valid_lft المفضل للأبد إلى الأبد

لقد رأينا تكوين الشبكة ، فلنعدّلها الآن. لنفترض أننا بحاجة إلى تغيير عنوان IP. للقيام بذلك ، انتقل إلى الدليل / etc / sysconfig / network-scripts وافتح الملف لتحريره ifcfg-eth0. يحتوي هذا الملف على المحتوى التالي:

وفقًا لإعدادات هذا الملف ، نحصل على عنوان IP عبر dhcp. لتسجيل عنوان IP ثابت يدويًا ، نأتي بالملف إلى المحتوى التالي:

لقد قمنا بتغيير الإعدادات:

لكي تدخل التغييرات حيز التنفيذ ، يجب إعادة قراءة إعدادات الشبكة:

إعادة تشغيل الشبكة (عبر systemctl): [موافق]

تحقق مما إذا تم تطبيق تكوين الشبكة الجديد:

# ifconfig: eno16777728: الأعلام = 4163 mtu 1500 إنت 192.168.159.129 قناع الشبكة 255.255.255.0 البث 192.168.159.255 inet6 fe80 :: 20c: 29ff: fe7d: 593f prefixlen 64 نطاق النطاق 0x20 إيثر 00: 0c: 29: 7d: 59: 3f txqueuelen 1000 (Ethernet) حزم RX 672 بايت 71841 (70.1 كيلو بايت) أخطاء RX 0 مسقطة 0 تجاوزات 0 إطار 0 حزم TX 572 بايت 290861 (284.0 كيلو بايت) أخطاء TX 0 مسقطة 0 تجاوزات 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 الآن وأضفت بعض نظام أسماء النطاقات للخادم هناك ، فسيتم استبدالها بعد إعادة التشغيل بالقيم من ملف ifcfg-eth0.

لذلك من أجل تعيين معلمات خادم نظام أسماء النطاقات ، تحتاج إلى تعديل ملف إعدادات الشبكة ifcfg-eth0 ، مع إضافة أكبر عدد تريده من الخوادم. على سبيل المثال مثل هذا:

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

لتطبيق الإعدادات ، احفظ الملف وأعد تشغيل الشبكة ، كل شيء كالمعتاد. بعد إعادة تشغيل الخادم ، ستتم كتابة إعدادات نظام أسماء النطاقات في ملف resolv.conf

# cat /etc/resolv.conf # تم إنشاؤه بواسطة خادم أسماء NetworkManager 192.168.159.2 خادم الأسماء 8.8.8.8 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 0.0.0.0 : 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 0.0.0.0:49252 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:* 694 / avahi-daemon: r udp 0 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

افتح الآن ملف تكوين postfix /etc/postfix/main.cf. نحن نبحث عن الخط هناك:

#inet_protocols = الكل

تغيير إلى:

inet_protocols = ipv4

تعطيل ipv6 في chronyd. للقيام بذلك ، قم بإنشاء ملف / etc / sysconfig / كرونيدوأضف السطر:

الخيارات = -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 = لا

أعد التشغيل وتحقق من النتيجة:

# reboot # ifconfig eno16777728: الأعلام = 4163 mtu 1500 inet 192.168.159.129 قناع الشبكة 255.255.255.0 البث 192.168.159.255 الأثير 00: 0c: 29: 7d: 59: 3f الحزم 2138 بايت 1327955 (1.2 MiB) أخطاء TX 0 سقطت 0 تجاوزات 0 ناقلة 0 تصادم 0 lo: أعلام = 73 mtu 65536 بوصة 127.0.0.1 قناع الشبكة 255.0.0.0 حلقة txqueuelen 0 (الاسترجاع المحلي) حزم RX 0 بايت 0 (0.0 B) أخطاء RX 0 إسقاط 0 تجاوزات 0 إطار 0 حزم TX 0 بايت 0 (0.0 B) أخطاء TX 0 إسقاط 0 تجاوزات 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 0.0.0.0 : 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:* 697 / avahi-daemon: r udp 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يضع اسم المضيف مضيف محلي. إذا لم تكن قد قمت بتغييره ، فيمكنك القيام بذلك لاحقًا. أولاً ، دعنا نتحقق من اسم المضيف الذي قمت بتعيينه. يتم ذلك باستخدام الأمر الموجود في وحدة التحكم اسم المضيفأو باستخدام وحيد:

# hostname localhost.localdomain # uname -n localhost.localdomain

لتغيير اسم المضيف في CentOS ، تحتاج إلى تعديل الملف / etc / hostname. دعنا نتحقق من محتوياته:

# cat / etc / hostname localhost.localdomain

دعنا نعدل هذا الملف لتغيير اسم المضيف:

# mcedit / etc / hostname centos.localhost

احفظ الملف وتحقق من:

# اسم المضيف centos.localhost

يوجد أمر جاهز يعيّن على الفور اسم الخادم المطلوب:

# hostnamectl set-hostname centos.localhost

حسنًا ، لقد قمنا بتغيير اسم المضيف إلى centos.localhost

قم بتعيين البوابة الافتراضية على CentOS 7

إذا لم تقم لسبب ما ، عند تكوين إعدادات الشبكة ، بتعيين البوابة الافتراضية ، فيمكنك القيام بذلك يدويًا. أولاً ، دعنا نتحقق من البوابة الافتراضية المثبتة في النظام هذه اللحظة:

# netstat -nr جدول توجيه IP لـ Kernel IP بوابة الوجهة أعلام Genmask نافذة MSS 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 Tun0 10.8.0.2 0.0.0.0.0 255.255.255.255 UH 0 0 Tun0 149.154.70.0 0.0.0.25.255.254.0 U 0 0 ETH0 192.168.1.0 10.8.0.2 255.255. 255.0 UG 0 0 0 tun0.0

يحدد السطر الذي يحتوي على الوجهة 0.0.0.0 عنوان البوابة. إذا لم يكن لديك ، أو تم تعيين بوابة خاطئة في حقل البوابة ، فيمكنك تغييرها. قم بتعيين البوابة الافتراضية:

إضافة المسار الافتراضي gw 192.168.0.1

مدير الشبكة في CentOS 7

بشكل افتراضي ، لدى CentOS خدمة تدير جميع اتصالات الشبكة - مدير الشبكة. يراقب باستمرار إعدادات الشبكة ويستخدم البرنامج الخفي لإدارة التكوين لإجراء التغييرات المناسبة على أجهزة الشبكة النشطة. وهو يدعم ملفات تكوين ifcfg القياسية.

قائمة أدوات الشبكة وتطبيقاتها:

لا يتفاعل المستخدمون بشكل مباشر مع NetworkManager على CentOS ، لكنهم يستخدمون أدوات مساعدة رسومية وسطر أوامر. واحدة من هذه المرافق هي شبكة تكوين النظام توي.

شبكة تكوين النظام tui على CentOS 7

لإدارة إعدادات الشبكة في CentOS ، يمكنك استخدام أداة رسومية nmtui. التحقق من وجودها في النظام بسيط للغاية. يكفي تشغيله في وحدة التحكم:

إذا لم يكن مثبتًا لديك ، فسيكون إصلاحه بسيطًا جدًا. التثبيت في شبكة تكوين نظام CentOS:

# يمكنك تثبيت NetworkManager-tui

باستخدام توييمكنك تحديد أي إعدادات شبكة قمنا بها من قبل من خلال سطر الأوامر والتحرير ملفات التكوين. لنفعل ذلك. نسمي البرنامج:

اختر العنصر الأول تحرير اتصال، ثم حدد واجهة الشبكة وانقر على "تعديل":

هنا يمكننا تغيير اسم بطاقة الشبكة وعنوان mac وتحديد نوع إعدادات الشبكة - يدوي أو dhcp ، وتحديد عنوان IP وعنوان البوابة وخادم DNS وإضافة مسارات وبعض الإعدادات الأخرى يدويًا:


بعد الانتهاء من التحرير ، احفظ الإعدادات بالنقر فوق موافق.
إذا قمت بتحديد العنصر في الشاشة الأولى من الأداة المساعدة قم بتعيين اسم مضيف النظام، يمكنك تحديد اسم المضيف بسرعة. ستكون النتيجة هي نفسها كما فعلنا من قبل في وحدة التحكم.

كيفية إضافة مسار ثابت في CentOS 7

قد تحتاج إلى إضافة مسار ثابت للتحكم في التوجيه على CentOS. هذا من السهل القيام به بأمر وحدة التحكم. أولاً ، دعنا نتحقق من المسارات الحالية باستخدام netstat:

# netstat -nr جدول توجيه IP لـ Kernel IP بوابة الوجهة علامات Genmask MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 0 eno1677

في هذه الحالة ، لدينا مسار واحد للعنوان 0.0.0.0/0.0.0.0 ، البوابة هي 192.168.159.2 ، وهي أيضًا البوابة الافتراضية. هذا هو ، في الواقع ، لا توجد مسارات ثابتة. دعونا نضيف واحد منهم.

لنفترض أن لدينا قناع شبكة فرعية 192.168.8.0 255.255.255.0 ، يتم توجيه حركة المرور إلى هذه الشبكة الفرعية بواسطة البوابة 192.168.159.5 أضف مسارًا:

# route add -net 192.168.8.0/24 gw 192.168.159.5

تحقق مما إذا كان المسار المضاف قد ظهر في جدول التوجيه:

# netstat -nr جدول توجيه Kernel IP لبوابة الوجهة علامات Genmask 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.159.5 255.255.255.0 UG 0 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 يو 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

أعد التشغيل وتحقق مما إذا كان المسار في مكانه:

# reboot # netstat -nr جدول توجيه Kernel IP بوابة الوجهة علامات Genmask 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.159.5 255.255.255.0 UG 0 0 0 eno16777728 192.168.159.0 0.0 .0.0 255.255.255.0 U 0 0 0 eno16777728

حسنًا ، تمت إضافة المسار الثابت.

كيفية تكوين عنوانين IP على واجهة واحدة

إذا كنت بحاجة إلى إقامة 2 IPعناوين على نفس الواجهة في CentOS ، فهذا بسيط للغاية. لنستخدم الأمر ifconfig. أولاً ، دعنا نتحقق من قائمة واجهات الشبكة:

# ifconfig eno16777728: الأعلام = 4163 mtu 1500 inet 192.168.159.129 قناع الشبكة 255.255.255.0 البث 192.168.159.255 الأثير 00: 0c: 29: 7d: 59: 3f الحزم 204 بايت 27658 (27.0 كيلوبايت) أخطاء TX 0 سقطت 0 تجاوزات 0 حاملة 0 تصادم 0 لو: أعلام = 73

دعنا نضيف عنوان IP آخر 192.168.159.120 إلى واجهة eno16777728:

# ifconfig eno16777728: 1 192.168.159.120 لأعلى

دعنا نتحقق مما حدث:

# ifconfig eno16777728: الأعلام = 4163 mtu 1500 inet 192.168.159.129 قناع الشبكة 255.255.255.0 البث 192.168.159.255 الأثير 00: 0c: 29: 7d: 59: 3f الحزم 204 بايت 27658 (27.0 كيلوبايت) أخطاء TX 0 سقطت 0 تجاوزات 0 حامل 0 تصادم 0 eno16777728: 1: الأعلام = 4163 mtu 1500 inet 192.168.159.120 قناع الشبكة 255.255.255.0 بث 192.168.159.255 الأثير 00: 0c: 29: 7d: 59: 3f txqueuelen 1000 (Ethernet) lo: flags = 73 mtu 65536 inet 127.0.0.1 قناع الشبكة 255.0.0.0 حلقة txqueuelen 0 (الاسترجاع المحلي) حزم RX 11 بايت 940 (940.0 B) أخطاء RX 0 إسقاط 0 تجاوزات 0 إطار 0 حزم TX 11 بايت 940 (940.0 B) أخطاء TX 0 إسقاط 0 تجاوزات 0 حاملة 0 اصطدام 0

حسنًا ، أضفنا عنوان IP ثانيًا إلى نفس الواجهة. ولكن بعد إعادة التشغيل ، لن يتم حفظ العنوان الإضافي. لحفظه ، تحتاج إلى إنشاء ملف إعدادات واجهة في مجلد / etc / sysconfig / network-scripts

# mcedit / etc / sysconfig / network-scripts / ifcfg-eno16777728: 1الجهاز = 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

من أجل العثور بسرعة على عنوان IP الحالي في CentOS ، تحتاج إلى استخدام الأوامر التالية:

# ifconfig | غريب إنت إنت 192.168.159.129 قناع الشبكة 255.255.255.0 البث 192.168.159.255 بوصة 127.0.0.1 قناع الشبكة 255.0.0.0

أو الخيار الثاني لتحديد عنوان IP المحلي:

# عنوان IP | grep inet 127.0.0.1/8 نطاق المضيف لو آينت 192.168.159.129 / 24 brd 192.168.159.255 نطاق عالمي eno16777728

كلا الأمرين يسمحان لك باكتشاف عنوان IP الخاص بك بسرعة.

ماذا تفعل إذا كان CentOS لا يرى بطاقة الشبكة؟

لقد قمت بتثبيت الخادم وتمهيده ووجدت أنه لا توجد بطاقة شبكة واحدة في النظام. ماذا تفعل في هذه الحالة؟ بادئ ذي بدء ، انظر إلى إخراج الأمر dmesg وابحث عن تذكير ببطاقتك هناك. ربما يكون في النظام ، لم يتم تنشيطه. يمكنك تفعيله مع nmtuiالتي ذكرتها أعلاه.

هناك عنصر القائمة تنشيط الاتصال، عليك الدخول فيه وتفعيل بطاقة الشبكة الخاصة بك. بعد ذلك ، يمكن تهيئته.

إذا لم تكن بطاقة الشبكة الخاصة بك موجودة في النظام ، فأنت بحاجة إلى البحث في الإنترنت للحصول على معلومات حول بطاقة الشبكة هذه حسب الطراز. ربما ستكون هناك محركات لها في المستودعات. هذا هو الوضع الشائع إلى حد ما. في أغلب الأحيان ، سيتم العثور على برامج التشغيل وستحتاج إلى التثبيت بشكل صحيح.

هناك أيضًا احتمال ألا ترى بطاقتك عند تشغيل الأمر ifconfig ما لم يتم توصيل سلك شبكة بتلك البطاقة. لرؤية جميع الواجهات بالتأكيد ، تحتاج إلى استخدام مفتاح التبديل -a:

# ifconfig -a

هناك طريقة أخرى للبحث عن بطاقة الشبكة في النظام. قم بتثبيت الحزمة بكيوتيلس:

# yum -y تثبيت pciutils

وانظر إخراج الأمر:

# lspci | grep إيثرنت

إذا شاهد النظام بطاقة الشبكة ، فيجب أن يكون هناك شيء مثل هذا:

02: 00.0 وحدة تحكم Ethernet: وحدة تحكم Intel Corporation 82545EM Gigabit Ethernet (نحاسية) (rev 01)

إذا كان الإخراج فارغًا ، فلن يتم تحديد بطاقة الشبكة.

ماذا تفعل إذا كانت الشبكة غير متوفرة في CentOS؟

لنفترض أنك حاولت تنفيذ الأمر ping لبعض العناوين ، على سبيل المثال 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

الشيء نفسه مع البرنامج الشعبي حفرللعمل مع خوادم وسجلات نظام أسماء النطاقات:

# dig ya.ru bash: dig: الأمر غير موجود

الى هذا فائدة الشبكةحصل ، تحتاج إلى تثبيت الحزمة أدوات الربط:

# yum -y قم بتثبيت أدوات الربط

تكوين 802.1Q VLANs على CentOS 7

لرفع واجهة ذات علامات تمييز على CentOS ، يجب عليك أولاً التحقق من دعم kernel 8021q:

# modprobe 8021q

إذا لم تكن هناك رسائل خطأ ، فكل شيء على ما يرام ، تم تحميل الوحدة. إذا لم يتم العثور على الوحدة النمطية ، فيجب إعادة بناء وحدات kernel لتشمل دعمًا للوحدة المطلوبة. فقط في حالة حدوث ذلك ، دعنا نتحقق مما إذا تم تحميل الوحدة:

# 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:

#mcedit ifcfg-eth0.2000 VLAN = نعم الجهاز = eth0.2000 BOOTPROTO = تشغيل ONBOOT ثابت = نعم النوع = شبكة محلية ظاهرية IPADDR = 192.168.100.2 NETMASK = 255.255.255.0

ألفت انتباهك إلى الجرأة. في جميع التعليمات على الإنترنت التي صادفتها ، تمت الإشارة إلى هذه المعلمة على أنها النوع = إيثرنت، ولكن مع هذا الإعداد ، لم ترتفع الواجهة مع vlan ، ظهر خطأ:

خطأ: لم يتم العثور على جهاز للاتصال "System eth0.2000".

فقط بعد أن أصلحته ، كل شيء يعمل كما ينبغي. لذا احفظ ونشط الواجهة:

# ifup eth0.2000 تم تنشيط الاتصال بنجاح (مسار D-Bus النشط: / org / freedesktop / NetworkManager / ActiveConnection / 7)

التحقق من شبكة VLAN الخاصة بنا:

# ip l ls 1: lo: mtu 65536 حالة رقم القرص qdisc وضع غير معروف رابط / استرجاع افتراضي 00: 00: 00: 00: 00: 00 brd 00: 00: 00: 00: 00: 00 2: eth0: mtu 1500 qdisc pfifo_fast حالة UP الوضع الافتراضي qlen 1000 رابط / إيثر 00: 15: 5d: 01: 0f: 06 brd ff: ff: ff: ff: ff: ff 3: [البريد الإلكتروني محمي]: mtu 1500 qdisc noqueue الوضع UP الوضع DEFAULT link / ether 00: 15: 5d: 01: 0f: 06 brd ff: ff: ff: ff: ff: ff

كل شيء على ما يرام ، الواجهة الموسومة تعمل. عن طريق القياس ، يمكنك إنشاء العديد من الواجهات المتشابهة ، مع تذكر تغيير أسمائها وعناوينها.

هذا يختتم مادتي الضخمة حول موضوع إنشاء شبكة في CentOS. سأكون سعيدًا جدًا بالتعليقات والملاحظات والتعديلات. هم بالتأكيد سيفعلون. من خلال إنشاء مثل هذه المواد ، أتعلم نفسي أولاً وقبل كل شيء وتحسين معرفتي في مجال الموضوع. قد تكون هناك أخطاء وسهو في مكان ما ، على الرغم من أنني أتحقق من كل شيء في الأنظمة الحية أثناء كتابة الكتيبات ، إلا أن الأخطاء المطبعية لا تزال ممكنة.

الدورة التدريبية عبر الإنترنت "Linux Administrator"

إذا كانت لديك رغبة في تعلم كيفية بناء وصيانة أنظمة عالية التوفر وموثوق بها ، فإنني أوصي بالتعرف عليها دورة على الإنترنت "Linux Administrator"في أوتوس. الدورة ليست للمبتدئين ، للقبول تحتاج إلى معرفة أساسية بالشبكات وتثبيت Linux على جهاز افتراضي. يستمر التدريب لمدة 5 أشهر ، وبعد ذلك سيتمكن خريجو الدورة الناجحين من مقابلة الشركاء. اختبر نفسك في اختبار القبول وشاهد البرنامج بمزيد من التفاصيل.

كما تعلم ، ظهر بروتوكول IPv6 كبديل لبروتوكول IPv4 ، لأنه يسمح باستخدام عناوين أكثر من سابقتها. ومع ذلك ، يستمر الانتقال من IPv4 إلى IPv6 حتى يومنا هذا ، ولا يتوفر دعم IPv6 عالميًا. يتطلب دعم IPv6 دعمًا لكل من نظام التشغيل والبنية التحتية للشبكة ككل. لهذا السبب ، إذا لم يكن هذا البروتوكول مدعومًا على الخادم الخاص بك ، فمن الأفضل تعطيله حتى تعمل الشبكة مع البروتوكولات العاملة. عندما يتم تمكين IPv6 ولكن لا يعمل ، فقد تكون هناك تأخيرات مرتبطة بالتوجيه ، على سبيل المثال ، عند البحث عن مجال ، ومحاولة الاتصال بعناوين IPv6 ، وقد تظهر المشكلة أيضًا في العديد من البرامج التي تستخدم اتصالات الشبكة.
لنلقِ نظرة على عدة طرق لتعطيل IPv6 في Linux CentOS 7. لهذه الأغراض ، نحتاج إلى الوصول إلى وحدة تحكم الخادم بحقوق المستخدم المتميز.

الطريقة الأولى
نقوم بتعطيل بروتوكول IPv6 لجميع واجهات نظام التشغيل ، ولهذا نحتاج إلى إجراء تغييرات على ملف /etc/sysctl.conf. افتح الملف مدمجًا:

Vi /etc/sysctl.conf

أضف الأسطر التالية:

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

قد يكون من الضروري أيضًا تعطيل بروتوكول IPv6 للواجهات الفردية ، بافتراض أن اسم الواجهة هو enp0s3، في هذه الحالة أضف السطر التالي:

net.ipv6.conf.enp0s3.disable_ipv6 = 1

نحفظ التغييرات في الملف ، ثم نطبق التغييرات في التكوين:

Sysctl -p

الطريقة الثانية
إذا كنت بحاجة إلى تعطيل IPv6 دون إعادة تشغيل التكوين ، فيمكنك استخدام الأوامر أدناه لإجراء تغييرات بسرعة.

صدى 1> / proc / sys / net / ipv6 / conf / all / disable_ipv6 echo 1> / proc / sys / net / ipv6 / conf / default / disable_ipv6

أدخل الأوامر واحدًا تلو الآخر ، واحدًا تلو الآخر ، يمكنك أيضًا استخدام الأوامر التالية:

Sysctl -w net.ipv6.conf.all.disable_ipv6 = 1

بعد تنفيذ هذه الأوامر ، سيتم تعطيل IPv6. بالإضافة إلى ذلك ، بعد تعطيل IPv6 ، قد تظهر مشاكل مع بعض البرامج ، حيث يجب أن تشير أيضًا إلى أنها لا تحاول استخدام IPv6. المزيد عن هذا لاحقًا.

مشكلات SSH بعد تعطيل IPv6
إذا كنت تواجه مشكلات مع SSH بعد تعطيل IPv6 ، فاتبع هذه الخطوات. افتح ملف التكوين / etc / ssh / sshd_config

Vi / etc / ssh / sshd_config

ابحث عن الخط:

#AddressFamily أي

لنبدو هكذا:

العنوان

أو يمكنك إلغاء التعليق (أزل الرمز # في البداية) على السطر:

إعادة تشغيل systemctl sshd

مشاكل متعلقة بـ Posfix بعد تعطيل IPv6
يمكن أن تظهر المشكلات أيضًا مع Postfix بعد تعطيل IPv6 ، لتصحيح الموقف ، يجب عليك تنفيذ الخطوات التالية.
فتح ملف التكوين /etc/postfix/main.cf:

/etc/postfix/main.cf

البحث عن سلسلة inet_interfacesمع معنى مضيف محليوعلق عليها ، ولم يتبق سوى السطر الذي يحتوي على القيمة 127.0.0.1.

# inet_interfaces = localhost inet_interfaces = 127.0.0.1 إعادة تشغيل systemctl postfix

إذا كانت لديك الفرصة لاستخدام IPv6 ، فيمكنك إعادة الإعدادات إلى مواضعها الأصلية بنفس الطريقة ، فلن يكون الأمر صعبًا. بعد تعطيل IPv6 الذي لا يعمل ، قد تلاحظ تحسنًا في أداء الشبكة.

يصف Post إجراء تعطيل IPv6 على CentOS / RHEL 7. هناكطريقتان للقيام بذلك:
1. تعطيل IPv6 في وحدة kernel (يتطلب إعادة التشغيل)
2. تعطيل IPv6 باستخدام إعدادات sysctl (لا يلزم إعادة التشغيل)

للتحقق مما إذا كان IPv6 ممكّنًا أم لا ، نفّذ:

# ifconfig -a | grep inet6 inet6 fe80 :: 211: aff: fe6a: 9de4 prefixlen 64 نطاق 0x20 inet6 :: 1 prefixlen 128 نطاق 0x10

1. تعطيل IPv6 في وحدة kernel (يتطلب إعادة التشغيل)

1. قم بتحرير / etc / default / grub وأضف ipv6.disable = 1 في السطر GRUB_CMDLINE_LINUX ، على سبيل المثال:

# cat / etc / default / grub GRUB_TIMEOUT = 5 GRUB_DEFAULT = حفظ GRUB_DISABLE_SUBMENU = صحيح GRUB_TERMINAL_OUTPUT = "وحدة التحكم" GRUB_CMDLINE_LINUX = "ipv6.disable = 1كراش كيرنيل = rhgb هادئ تلقائي "GRUB_DISABLE_RECOVERY =" صحيح "

2. قم بإعادة إنشاء ملف تكوين GRUB واستبدال الملف الموجود:

# grub2-mkconfig -o /boot/grub2/grub.cfg

3. أعد تشغيل النظام وتحقق من عدم وجود سطر "inet6" في إخراج الأمر "ip addr show".

# اغلاق -r الان

# عرض عنوان IP | شبكة grep6

2. تعطيل IPv6 باستخدام إعدادات sysctl (لا يلزم إعادة التشغيل)

1. قم بإرفاق الأسطر التالية في /etc/sysctl.conf:

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

2. لجعل الإعدادات مؤثرة ، قم بتنفيذ.