# بازیابی پس از مسدودسازی IP

> وقتی IP سرور مسدود شده چه باید کرد — تشخیص و گزینه‌های بازیابی.

## تشخیص

از ماشین خود اجرا کنید (SSH نیاز نیست):

```
meridian test 198.51.100.10
```

اگر بررسی TCP روی درگاه 443 از شبکه شما ناموفق باشد اما جای دیگری کار کند (شبکه دیگر، یک VPN، [ابزار ping](https://getmeridian.org/ping))، IP احتمالاً مسدود است. شکست TCP همه جا معمولاً firewall ابر یا سرور خاموش را به معنی است.

## تسکین فوری

اگر شما با **دامنه** deploy کردید (`--domain`) و رکورد از طریق Cloudflare proxied است، مسیرهای XHTTP و WSS همچنان کار می‌کنند — آن‌ها به Cloudflare می‌رسند نه IP مسدود شده. برنامه‌هایی که JSON Xray یا subscription Mihomo استفاده می‌کنند خود تعویض می‌کنند؛ برنامه‌های دیگر می‌توانند ورودی XHTTP یا WSS را به دستی انتخاب کنند.

اگر شما **relay** دارید، کلاینت‌هایی که از طریق آن متصل می‌شوند تاثیر نمی‌پذیرند تا relay خود می‌تواند دوباره خروجی را بدست آورد.

## گزینه‌های بازیابی

### اضافه کردن خروجی جایگزین

سریع‌ترین مسیر، تا زمانی که سرور کنترل‌پلن (سرور پنل را اجرا می‌کند) همچنان از ماشین شما قابل دسترس است:

```bash
# 1. یک VPS جدید از provider دریافت کنید (IP جدید)
# 2. آن را به fleet اضافه کنید
meridian node add 198.51.100.20 --name replacement
```

کلاینت‌ها حساب‌های خود را نگه می‌دارند. آن‌ها خروجی جدید را در بازخوانی subscription بعدی خود دریافت می‌کنند — اگر خود انجام نشود از کاربران بخواهید در برنامه refresh کنند.

### یا انتقال خروجی مسدود به سرور جدید

`node replace` خروجی را به سرور جدید منتقل می‌کند و ID، کلیدها، مسیرهای پروتکل و relayها را حفظ می‌کند، سپس سرور قدیم را پاکسازی می‌کند:

```bash
meridian node replace exit-1 198.51.100.20
```

کلاینت‌ها در بازخوانی subscription بعدی آدرس جدید را بدست می‌آورند. خود سرور کنترل‌پلن به این روش نمی‌تواند منتقل شود.

### اضافه کردن دامنه برای fallback CDN

اگر شما از دامنه استفاده نکردید، یکی به خروجی جدید اضافه کنید:

```bash
meridian node add 198.51.100.20 --domain vpn.example.com
```

مراحل Cloudflare را ببینید [حالت دامنه](/md/fa/domain-mode/).

### اضافه کردن relay

relay روی سرور خانگی به کاربران یک نقطه ورود می‌دهد که زمانی که IP خارجی مسدود شوند قابل دسترس می‌ماند:

```bash
meridian relay add 203.0.113.10 --exit 198.51.100.20
```

انتقال relay موجود به خروجی دیگر هنوز در دسترس نیست؛ به جای آن relay جدید را بر روی خروجی جدید deploy کنید.

### اگر سرور کنترل‌پلن از دست رفت

`node add` و `relay add` به پنل نیاز دارند. اگر سرور که آن را میزبانی می‌کرد رفته و نمی‌تواند restore شود، هنوز migration خودکار نیست: `meridian deploy` با سرور جدید استقرار دهید، سپس هر کلاینت را با `meridian client add` بازسازی کنید. هر فرد لینک جدید می‌گیرد.

## مدیریت از بیش از یک ماشین

تمام چیزی که Meridian در مورد fleet می‌داند در `~/.config/meridian/` روی ماشینی که deploy کنید زندگی می‌کند. برای مدیریت fleet از دوم‌ین ماشین، تمام آن دایرکتوری را کپی کنید، و دوباره پس از هر تغییری که در جای دیگری انجام می‌دهید کپی کنید.

شما نمی‌توانید به طور تصادفی کار دیگر ماشین را undo کنید. سرور کنترل مسجل کوچک‌ی از آخرین تغییر اعمال‌شده نگاه می‌دارد (`/var/lib/meridian/fence.json`). پیش از تغییر چیزی، Meridian کپی شما را با این record مقایسه می‌کند و `meridian plan` جلو از وقت هشدار می‌دهد اگر اعمال رد می‌شود:

- **"Another machine changed this fleet"**: کپی شما قدیم است. `~/.config/meridian/` را از ماشینی که اخیراً اعمال کرد کپی کنید، سپس دستور را دوباره اجرا کنید.
- **"Another apply is running"**: فردی fleet را تغییر می‌دهد. برای آن‌ها صبر کنید تا پایان برسند. اگر آن اجرا crashed، claim آن در 30 دقیقه منقضی می‌شود؛ یک اجرای crashed روی ماشین خود شما را مسدود نمی‌کند.
- **"This control server belongs to a different copy of the fleet"**: این `~/.config/meridian/` هرگز از ماشینی که fleet را مدیریت می‌کند کپی نشد.

## آماده‌سازی قبل از مسدودسازی

1. **relay اضافه کنید** روی سرور خانگی: `meridian relay add RELAY_IP --exit EXIT_IP`
2. **دامنه استفاده کنید** برای fallback CDN: با `--domain vpn.example.com` deploy کنید
3. **هر دو** — کلاینت‌ها سپس سه راه ورود دارند: relay (خانگی)، CDN (Cloudflare) و مستقیم
4. **`~/.config/meridian/` backup کنید** — این است که شما را اجازه می‌دهد fleet را از ماشین دیگر مدیریت کنید

## سرور قدیم را نگاه دارید

سرور مسدود شده را فوری حذف نکنید — مسدودسازی‌ها گاهی پس از روز یا هفته برداشته می‌شوند. گاهی بررسی کنید:

```bash
meridian test 198.51.100.10
```

وقتی دیگر نیاز ندارید، آن را با `meridian node remove` حذف کنید.
