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

ثلاثة أعطال تتشارك رسالة خطأ واحدة

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

التداخل لا يكرر أي عنوان إطلاقاً. شبكتك المحلية هي 192.168.1.0/24، وشبكة المكتب هي أيضاً 192.168.1.0/24، والآن يشير المسار إلى المكتب إلى عناوين هي أيضاً طابعتك ووحدة NAS لديك. لا شيء في تعارض بمعنى ARP؛ الحزمة ببساطة تذهب إلى الجهاز الخطأ على إحدى الشبكتين.

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

الاختبار 1: هل التكرار على مقطعك الخاص؟

ابدأ بسرد ما يحمله جهازك فعلاً، لا بما تتذكر أنك أعددته. عنوان محول VPN خاص بالنفق وليس هو العنوان الذي تراه المواقع، لذا فإن مخرجاً عاماً مشتركاً ليس تعارضاً.

ip -br addr
ip neigh
ip route show table all | grep -E 'wg|tun|ppp'

على ويندوز تأتي المعلومة نفسها من ipconfig /all و Get-NetIPAddress، مع ذاكرة الجيران في arp -a. إذا كان العنوان المتنازع عليه على المحول الفيزيائي والشكوى تظهر دون تشغيل الـ VPN، فإن الـ VPN متفرج وعليك أن تتوقف عن استكشاف أعطاله.

لإثبات التكرار بدل التخمين، افحص العنوان من جهاز لا يملكه. يرسل arping -D المسبار بعنوان مصدر صفري، لذا فإن رداً من MAC غير متوقع يثبت أن مضيفاً آخر يجيب عن ذلك العنوان بالفعل.

sudo arping -D -I eth0 -c 3 192.168.1.50

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

الاختبار 2: هل تتداخل الشبكتان؟

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

ip route get 192.168.1.10
ip -br addr show

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

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

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

الاختبار 3: هل منح النفق عنواناً واحداً مرتين؟

لا يملك WireGuard بركة عناوين. كل قرين يُعرَّف بمفتاحه العام وبالبادئات في AllowedIPs، لذا يظهر التكرار عندما يُكتب عنوان النفق نفسه في مدخلي قرين أو يُثبَّت الزوج المفتاحي نفسه على جهازين.

wg show all allowed-ips
wg show wg0 latest-handshakes
wg show wg0 transfer

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

OpenVPN يملك بركة بالفعل، والتصادم الشائع هو ملف تعريف عميل مشترك بسطر --ifconfig ثابت منسوخ إلى جهاز ثانٍ. عندئذ يطلب العميلان عنوان النفق نفسه، ويقبل الخادم الجلسة التي يعالجها أولاً. واستنفاد البركة مع --duplicate-cn يُنتج نتيجة مشابهة عندما تتنافس عدة جلسات لشهادة واحدة على مدخل واحد.

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

أصلح من المصدر ثم أعد فحص الجهازين

الترتيب مهم. أصلح تكرار الشبكة المحلية أولاً، لأن عميلاً لا يستطيع الاحتفاظ بعنوان لا يستطيع الاحتفاظ بنفق أيضاً. ثم أصلح التزويد على جانب الـ VPN، لأن تعديل العميل لتعيين بركة يُلغى عند الاتصال التالي. وأخيراً تعامل مع الهويات المكررة: أزواج مفاتيح منفصلة على WireGuard، وشهادات منفصلة أو على الأقل ملفات تعريف منفصلة على OpenVPN.

على العميل الجزء الميكانيكي قصير. حرّر إجارة DHCP وجددها، أو اطلب تغيير العنوان على الخادم لحجز. لا تكتب عنواناً عشوائياً يبدو حراً.

sudo dhclient -r eth0 && sudo dhclient eth0
ipconfig /release && ipconfig /renew

ثم تحقق من الطرفين، لا من طرف واحد. أكّد البوابة، ثم الخدمة التي تحتاجها فعلاً، ثم أعد الاتصال وكرر. إذا كان جهازان معنيين، افحص كليهما: نقل عنوان واحد يترك الآخر بإدخالات جار قديمة أو إجارة قديمة تعود لاحقاً.

ما لا يجب فعله أثناء الطريق

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

لا تغيّر عنونة شبكة مُدارة بنفسك أيضاً. سجّل الإعداد الأصلي، واسأل المالك عندما يُعيَّن العنوان مركزياً، وأبقِ التغيير صغيراً بما يكفي لعكسه. تشرح قواعد RFC 5227 لاكتشاف تعارض العناوين ما يثبته المسبار الصحيح، وهو أمر يستحق المعرفة قبل أن تسمي تعارضاً حقيقياً.

مقالات ذات صلة