- لماذا من المهم وجود خادم مخصص للعبة DayZ؟
- المتطلبات الأساسية واختيار الأجهزة/الموقع
- قم بتثبيت SteamCMD وقم بتنزيل ملفات خادم DayZ
- إعدادات الخادم الأولية وملف التكوين
- تشغيل خادم باستخدام tmux أو systemd
- منافذ وقواعد جدار الحماية
- إعدادات نظام التشغيل لتحسين الأداء وزمن الاستجابة (ping)
- إدارة التعديلات والتحديثات التلقائية والبرامج النصية
- المراقبة والنسخ الاحتياطي والصيانة
- نصائح عملية لتقليل زمن الاستجابة (ping) وتحسين تجربة اللاعب
- قائمة التحقق من التحضير قبل النشر
- ملخص واستنتاج
- الخدمات الموصى بها
- الأسئلة الشائعة
لماذا من المهم وجود خادم مخصص للعبة DayZ؟
إعداد خادم DayZ مخصص لك تحكم كامل يغطي هذا الدليل قواعد اللعبة، والتعديلات، وأوقات إعادة التشغيل، وسعة اللاعبين. سنتناول في هذا الدليل المفصل خطوة بخطوة تثبيت SteamCMD، وتنزيلات الخادم، والتكوين، وأمن الشبكة، وتحسين زمن الاستجابة (ping)، وإدارة التعديلات، مع التركيز على خوادم Linux. تتضمن الأمثلة العملية أوامر Linux، ومثالًا على وحدة systemd، وقواعد جدار الحماية، وتوصيات بشأن الأجهزة.
المتطلبات الأساسية واختيار الأجهزة/الموقع
قبل البدء، جهّز ما يلي:
- نظام التشغيل: أوبونتو 20.04/22.04 أو ديبيان 11/12 (مُستَحسَن)
- وصول جذر أو مستخدم لديه سودو
- عرض نطاق ترددي ثابت يبلغ 1 جيجابت في الثانية (للخوادم التي يزيد عدد لاعبيها عن 50 لاعبًا)
- القرص محرك أقراص الحالة الصلبة NVMe لتقليل زمن استجابة الإدخال/الإخراج
- معالج أحادي النواة قوي: من 20 إلى 60 لاعبًا: من 4 إلى 8 أنوية عالية التردد؛ أقل من 20 لاعبًا: من 2 إلى 4 أنوية كافية
- الذاكرة: الحد الأدنى 8 جيجابايت لـ 20 لاعبًا، و16 جيجابايت فأكثر لـ 60 لاعبًا والأوضاع الثقيلة
- إمكانية حماية من هجمات DDoS وبروتوكول BGP/الربط المناسب من مزود الخدمة
اختر موقعًا
للحصول على أقل زمن استجابة (ping)، اختر مركز بيانات قريبًا من اللاعبين ويتمتع باتصال جيد. أمثلة:
- الاتحاد الأوروبي: فرانكفورت أو أمستردام
- غير متاح: نيو جيرسي أو لوس أنجلوس
- منطقة آسيا والمحيط الهادئ: سنغافورة أو طوكيو
قم بتثبيت SteamCMD وقم بتنزيل ملفات خادم DayZ
تتضمن الطريقة العامة تثبيت المتطلبات الأساسية، وإنشاء مستخدم غير جذري، وتشغيل SteamCMD، وتنزيل ملفات خادم DayZ الرسمية.
1) تثبيت المتطلبات الأساسية (أوبونتو/ديبيان)
sudo apt update
sudo apt install -y lib32gcc-s1 steamcmd tmux wget ca-certificates curl2) أنشئ مستخدمًا غير مستخدم الجذر لتشغيل الخادم
sudo useradd -m -s /bin/bash dayz
sudo passwd dayz
sudo su - dayz3) قم بتثبيت/تشغيل SteamCMD كمستخدم DayZ
mkdir ~/steamcmd && cd ~/steamcmd
steamcmd4) قم بتنزيل خادم DayZ باستخدام SteamCMD
قم بتشغيل الأوامر التالية في SteamCMD:
login anonymous
force_install_dir /home/dayz/dayzserver
app_update 223350 validate
quitالمسارات المهمة وتنزيلات التعديلات (ورشة العمل)
بالنسبة لتعديلات ورشة العمل، يمكنك استخدام الأمر workshop_download_item في موجه أوامر Steam أو الأدوات الآلية. مثال:
steamcmd +login anonymous +workshop_download_item 221100 <workshop_id> +quitللعثور على معرف_ورشة_العمل قم بزيارة صفحة التعديل على ورشة عمل Steam.
إعدادات الخادم الأولية وملف التكوين
عادةً ما يكون ملف التكوين الرئيسي هو serverDZ.cfg أو server.cfg في مجلد الخادم. وفيما يلي نموذج التنسيق الأساسي (الرمزي):
hostname = "My DayZ Server";
password = ""; // player password (optional)
passwordAdmin = "Adm!nPass";
maxPlayers = 60;
verifySignatures = 2; // for mods (Steam Workshop)
motd[] = {"Welcome to our server"};
voteThreshold = 0.33;ثم قم بتعيين الأذونات:
chown dayz:dayz /home/dayz/dayzserver -R
chmod -R 750 /home/dayz/dayzserver
تشغيل خادم باستخدام tmux أو systemd
التنفيذ اليدوي (tmux)
tmux new -s dayz
cd /home/dayz/dayzserver
./DayZServer_x64 -config=serverDZ.cfg -port=2302 -profiles=./profiles -name=server_mynameلفصل الجهاز الطرفي: Ctrl+B ثم د.
أنشئ وحدة systemd (للتشغيل التلقائي)
قم بتشغيل الملف التالي بصلاحيات المستخدم الجذر أو باستخدام الأمر sudo: /etc/systemd/system/dayz.service يخلق:
[Unit]
Description=DayZ Server
After=network.target
[Service]
Type=simple
User=dayz
WorkingDirectory=/home/dayz/dayzserver
ExecStart=/home/dayz/dayzserver/DayZServer_x64 -config=serverDZ.cfg -port=2302 -profiles=./profiles -name=server_myname
Restart=on-failure
RestartSec=10
LimitNOFILE=100000
[Install]
WantedBy=multi-user.targetsudo systemctl daemon-reload
sudo systemctl enable --now dayz.service
sudo journalctl -u dayz -f
منافذ وقواعد جدار الحماية
نسخ لعبة DayZ الشهيرة (سيتم الانتهاء منها):
- UDP 2302 (منفذ اللعبة الرئيسي)
- UDP 2303-2305 (إذا لزم الأمر لمنافذ متعددة)
- UDP 27016 (استعلام ستيم / رئيسي)
- TCP/UDP 27015/27020 (في بعض التكوينات لـ RCON أو Steam)
نماذج قواعد UFW
sudo ufw allow 2302/udp
sudo ufw allow 27016/udp
sudo ufw allow 22/tcp # SSH
sudo ufw enableباستخدام iptables
sudo iptables -A INPUT -p udp --dport 2302 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 27016 -j ACCEPT
إعدادات نظام التشغيل لتحسين الأداء وزمن الاستجابة (ping)
بعض إعدادات الشبكة والنظام التي عادة ما تكون مفيدة:
زيادة التخزين المؤقت لبروتوكولي UDP وTCP
sudo sysctl -w net.core.rmem_max=12582912
sudo sysctl -w net.core.wmem_max=12582912
sudo sysctl -w net.ipv4.udp_rmem_min=8192
sudo sysctl -w net.ipv4.udp_wmem_min=8192
sudo sysctl -w net.ipv4.tcp_tw_reuse=1
sudo sysctl -w net.ipv4.tcp_fin_timeout=15لتطبيق التغييرات بشكل دائم، قم بتعيين القيم في /etc/sysctl.conf يضيف.
الإدخال/الإخراج والمجدول
بالنسبة لمحركات الأقراص NVMe/SSD، يمكنك ضبط المجدول على noop أو mq-deadline:
echo noop | sudo tee /sys/block/nvme0n1/queue/schedulerتأكد من صحة اسم الكتلة.
إدارة التعديلات والتحديثات التلقائية والبرامج النصية
مثال بسيط لبرنامج نصي لتحديث خادم DayZ:
#!/bin/bash
cd /home/dayz/steamcmd
./steamcmd +login anonymous +force_install_dir /home/dayz/dayzserver +app_update 223350 validate +quit
systemctl restart dayzلتشغيلها تلقائيًا باستخدام cron:
crontab -e
0 4 * * * /home/dayz/update_dayz.sh >> /home/dayz/update.log 2>&1قم بتنزيل تعديلات ورشة العمل وضعها في ملف تعريف الخادم، ثم أضف معلمات التعديل إلى سطر الأوامر (على سبيل المثال mods=/path1;/path2 و -mod=@modname).
المراقبة والنسخ الاحتياطي والصيانة
- السجلات: من Journalctl واستخدم ملفات السجل داخل مجلد الخادم.
- النسخ الاحتياطي: قم بإعداد برنامج نصي يومي لعمل نسخة احتياطية من مجلد الملفات الشخصية وقاعدة البيانات وحفظها في وحدة تخزين الكائنات أو موقع خارجي.
- المراقبة: باستخدام أدوات مثل بروميثيوس + غرافانا أو نت داتا يُستخدم لمراقبة وحدة المعالجة المركزية/الإدخال/الإخراج/الشبكة.
- لقطة: التقط لقطة من الجهاز الظاهري أو وحدة التخزين قبل تطبيق التحديثات الرئيسية.
نصائح عملية لتقليل زمن الاستجابة (ping) وتحسين تجربة اللاعب
- اختر موقعًا القرب من اللاعبين؛ وجود مراكز بيانات متعددة (على سبيل المثال، أكثر من 85 موقعًا) أمر مهم لاختيار الموقع المناسب.
- التناظر وشبكة توصيل المحتوى (CDN) بالنسبة للملفات الثابتة، تساعد التعديلات على التنزيل بشكل أسرع وتقليل الحمل على الشبكة.
- قلل من تغييرات الإدخال/الإخراج للقرص خلال ساعات الذروة؛ استخدم NVMe وذاكرة التخزين المؤقت المناسبة.
- اضبط معدل التشغيل وإرسال الحزم (معدل التحديث/نبض القلب) وفقًا لقوة الجهاز وعدد اللاعبين.
- استخدم خوادم مكافحة هجمات DDoS وتكوين الشبكة (BGP anycast) لمنع الهجمات.
قائمة التحقق من التحضير قبل النشر
- [ ] تحقق من زمن الاستجابة (ping/iperf) من المناطق المستهدفة
- [ ] تم تفعيل الحماية من هجمات DDoS وجدار الحماية
- [ ] اختبار تسجيل الدخول وتخزين ملف تعريف اللاعب
- [ ] إعداد النسخ الاحتياطي التلقائي واللقطة
- [ ] خطوات تحديث المستند والتراجع
- [ ] مراقبة وتنبيهات وحدة المعالجة المركزية/الذاكرة/الشبكة
ملخص واستنتاج
يُغطي هذا الدليل الخطوات الرئيسية بدءًا من المتطلبات الأساسية، مرورًا بتثبيت SteamCMD، وتنزيل الخادم وتشغيله، وصولًا إلى الإعدادات، والأمان، وتحسين النظام، ونصائح تقليل زمن الاستجابة (ping). وللحصول على أفضل تجربة لعب، خاصةً على الخوادم العامة أو التنافسية، يُعد اختيار الموقع المناسب، واستخدام قرص SSD من نوع NVMe، ومعالج قوي أحادي النواة، وذاكرة كافية، وخدمات الحماية من هجمات DDoS، أمورًا أساسية.
الخدمات الموصى بها
الخدمات ذات الصلة التي يمكن أن تكون مفيدة في تنفيذ وصيانة الخوادم:
- الوصول إلى أكثر من 85 موقعًا عالميًا لاختيار مركز البيانات الأقرب إلى لاعبيك
- خوادم افتراضية خاصة وخوادم سحابية عالية الأداء مناسبة لخوادم الألعاب
- خوادم ألعاب وخوادم افتراضية خاصة (VPS) للألعاب بتكوين مثالي، وحماية من هجمات DDoS وشبكة BGP
- إمكانية استخدام الخوادم المخصصة ووحدات معالجة الرسومات (GPUs) لتعديلات أو احتياجات محددة
- خدمات الاستضافة، والنطاق، وشبكة توصيل المحتوى (CDN) لتوزيع التعديلات والملفات، ودعم فني على مدار الساعة.









