ایجاد تنظیمات جزئی دستگاه با netlab «وبلاگ ipSpace.net

در ITNOG 10، چیزی را دیدم که مدتها بود ندیده بودم: یک آزمایشگاه فیزیکی سبک Interop که از دهها دستگاه از فروشندگان مختلف استفاده میکرد. هسته شبکه یک پارچه برگ با بازتابنده های مسیر BGP خارج از مسیر و دستگاه های متعدد دیگر متصل به آن بود.
من چندین شبکه را در گذشته پیکربندی کردهام، بنابراین میدانم که پیکربندی همه این دستگاهها با دست (و رفع تمام خطاهای آدرسدهی IP) باید یک جانور بوده باشد، اما بعد فکری به ذهنم رسید: مگر اینکه کسی بخواهد پیکربندی آدرسهای IP را تمرین کند، ممکن است استفاده از آن ایده خوبی باشد. netlab برای ایجاد یک طرح آدرس دهی IP و تنظیمات جزئی دستگاه.
توپولوژی شبکه اصلی
در اینجا فرآیندی است که من استفاده خواهم کرد:
- توپولوژی آزمایشگاه هدف را در آن شرح دهید netlab فایل توپولوژی (اگر آن را نام ببرید زندگی آسان تر خواهد شد
topology.yml). - طرح سیم کشی را با سیم کشی گزارش نت لب فرمان فایل توپولوژی را تا زمانی که درست به نظر برسد تغییر دهید. در صورت لزوم، نام رابط یا فهرست را برای مطابقت با تجهیزات فیزیکی خود تغییر دهید. در اینجا گزارش سیم کشی من از فایل توپولوژی من است:
| دستگاه اولیه | بندر مبدا | دستگاه هدف | بندر مقصد |
|---|---|---|---|
| asbr1 | اترنت 0/1 | هسته 1 | GigabitEthernet0/0/0/0 |
| asbr1 | اترنت 0/2 | هسته 2 | GigabitEthernet0/0/0/0 |
| asbr2 | اترنت 0/1 | هسته 1 | GigabitEthernet0/0/0/1 |
| asbr2 | اترنت 0/2 | هسته 2 | GigabitEthernet0/0/0/1 |
| هسته 1 | GigabitEthernet0/0/0/2 | bng1 | eth1 |
| هسته 1 | GigabitEthernet0/0/0/3 | bng2 | eth1 |
| هسته 2 | GigabitEthernet0/0/0/2 | bng1 | eth2 |
| هسته 2 | GigabitEthernet0/0/0/3 | bng2 | eth2 |
| هسته 1 | GigabitEthernet0/0/0/4 | rr1 | GigabitEthernet0/1 |
| هسته 2 | GigabitEthernet0/0/0/4 | rr2 | GigabitEthernet0/1 |
- از طرح سیم کشی برای اتصال دستگاه های آزمایشگاهی استفاده کنید
- چاپ طرح آدرس دهی با گزارش های آدرس دهی netlab. در اینجا گزارش آدرس دهی اولیه ای است که دریافت کردم:
| گره/رابط | آدرس IPv4 | آدرس IPv6 | توضیحات |
|---|---|---|---|
| asbr1 | 10.0.0.1/32 | Loopback | |
| اترنت 0/1 | 10.1.0.1/30 | asbr1 -> core1 | |
| اترنت 0/2 | 10.1.0.5/30 | asbr1 -> core2 | |
| asbr2 | 10.0.0.2/32 | Loopback | |
| اترنت 0/1 | 10.1.0.9/30 | asbr2 -> core1 | |
| اترنت 0/2 | 10.1.0.13/30 | asbr2 -> core2 | |
| هسته 1 | 10.0.0.3/32 | Loopback | |
| GigabitEthernet0/0/0/0 | 10.1.0.2/30 | core1 -> asbr1 | |
| GigabitEthernet0/0/0/1 | 10.1.0.10/30 | core1 -> asbr2 | |
| GigabitEthernet0/0/0/2 | 10.1.0.18/30 | core1 -> bng1 | |
| GigabitEthernet0/0/0/3 | 10.1.0.22/30 | core1 -> bng2 | |
| GigabitEthernet0/0/0/4 | 10.1.0.33/30 | core1 -> rr1 | |
| هسته 2 | 10.0.0.4/32 | Loopback | |
| GigabitEthernet0/0/0/0 | 10.1.0.6/30 | core2 -> asbr1 | |
| GigabitEthernet0/0/0/1 | 10.1.0.14/30 | core2 -> asbr2 | |
| GigabitEthernet0/0/0/2 | 10.1.0.26/30 | core2 -> bng1 | |
| GigabitEthernet0/0/0/3 | 10.1.0.30/30 | core2 -> bng2 | |
| GigabitEthernet0/0/0/4 | 10.1.0.37/30 | core2 -> rr2 | |
| bng1 | 10.0.0.5/32 | Loopback | |
| eth1 | 10.1.0.17/30 | bng1 -> kernel1 | |
| eth2 | 10.1.0.25/30 | bng1 -> kernel2 | |
| bng2 | 10.0.0.6/32 | Loopback | |
| eth1 | 10.1.0.21/30 | bng2 -> kernel1 | |
| eth2 | 10.1.0.29/30 | bng2 -> core2 | |
| rr1 | 10.0.0.7/32 | Loopback | |
| GigabitEthernet0/1 | 10.1.0.34/30 | rr1 -> core1 | |
| rr2 | 10.0.0.8/32 | Loopback | |
| GigabitEthernet0/1 | 10.1.0.38/30 | rr2 -> core2 |
- در صورت لزوم، استخرهای آدرس دهی یا آدرس های حلقه بک/اینترفیس جداگانه را پیکربندی کنید. به عنوان مثال، از آنجایی که طرح آدرس دهی آزمایشگاه از پیشوندهای /31 IPv4 و /127 IPv6 برای اتصالات P2P و پیشوندهای /128 IPv6 برای Loopback استفاده می کند، این تنظیمات مجموعه آدرس را به فایل توپولوژی آزمایشگاه اضافه کنید.:
addressing:
loopback:
ipv6: 2400:8800:1ff::/56
prefix6: 128
p2p:
ipv4: 63.216.92.0/24
prefix: 31
ipv6: 2400:8800:1ff::/56
prefix6: 127
- گزارش آدرس دهی را دوباره ایجاد کنید و آن را بررسی کنید. در اینجا گزارش اصلاح شده برای توپولوژی آزمایشگاه من است:
| گره/رابط | آدرس IPv4 | آدرس IPv6 | توضیحات |
|---|---|---|---|
| asbr1 | 10.0.0.1/32 | 2400:8800:1ff::1/128 | Loopback |
| اترنت 0/1 | 63.216.92.0/31 | 2400:8800:1ff::2/127 | asbr1 -> core1 |
| اترنت 0/2 | 63.216.92.2/31 | 2400:8800:1ff::4/127 | asbr1 -> core2 |
| asbr2 | 10.0.0.2/32 | 2400:8800:1ff::2/128 | Loopback |
| اترنت 0/1 | 63.216.92.4/31 | 2400:8800:1ff::6/127 | asbr2 -> core1 |
| اترنت 0/2 | 63.216.92.6/31 | 2400:8800:1ff::8/127 | asbr2 -> core2 |
| هسته 1 | 10.0.0.3/32 | 2400:8800:1ff::3/128 | Loopback |
| GigabitEthernet0/0/0/0 | 63.216.92.1/31 | 2400:8800:1ff::3/127 | core1 -> asbr1 |
| GigabitEthernet0/0/0/1 | 63.216.92.5/31 | 2400:8800:1ff::7/127 | core1 -> asbr2 |
| GigabitEthernet0/0/0/2 | 63.216.92.9/31 | 2400:8800:1ff::b/127 | core1 -> bng1 |
| GigabitEthernet0/0/0/3 | 63.216.92.11/31 | 2400:8800:1ff::d/127 | core1 -> bng2 |
| GigabitEthernet0/0/0/4 | 63.216.92.16/31 | 2400:8800:1ff::12/127 | core1 -> rr1 |
| هسته 2 | 10.0.0.4/32 | 2400:8800:1ff::4/128 | Loopback |
| GigabitEthernet0/0/0/0 | 63.216.92.3/31 | 2400:8800:1ff::5/127 | core2 -> asbr1 |
| GigabitEthernet0/0/0/1 | 63.216.92.7/31 | 2400:8800:1ff::9/127 | core2 -> asbr2 |
| GigabitEthernet0/0/0/2 | 63.216.92.13/31 | 2400:8800:1ff::f/127 | core2 -> bng1 |
| GigabitEthernet0/0/0/3 | 63.216.92.15/31 | 2400:8800:1ff::11/127 | core2 -> bng2 |
| GigabitEthernet0/0/0/4 | 63.216.92.18/31 | 2400:8800:1ff::14/127 | core2 -> rr2 |
| bng1 | 10.0.0.5/32 | 2400:8800:1ff::5/128 | Loopback |
| eth1 | 63.216.92.8/31 | 2400:8800:1ff::a/127 | bng1 -> kernel1 |
| eth2 | 63.216.92.12/31 | 2400:8800:1ff::e/127 | bng1 -> core2 |
| bng2 | 10.0.0.6/32 | 2400:8800:1ff::6/128 | Loopback |
| eth1 | 63.216.92.10/31 | 2400:8800:1ff::c/127 | bng2 -> kernel1 |
| eth2 | 63.216.92.14/31 | 2400:8800:1ff::10/127 | bng2 -> core2 |
| rr1 | 10.0.0.7/32 | 2400:8800:1ff::7/128 | Loopback |
| GigabitEthernet0/1 | 63.216.92.17/31 | 2400:8800:1ff::13/127 | rr1 -> core1 |
| rr2 | 10.0.0.8/32 | 2400:8800:1ff::8/128 | Loopback |
| GigabitEthernet0/1 | 63.216.92.19/31 | 2400:8800:1ff::15/127 | rr2 -> core2 |
netlab می تواند بیشتر گزارش ها را به صورت جداول با فرمت Markdown تولید کند که می تواند مستقیماً در اسناد آزمایشگاهی استفاده شود.
- ماژول های پیکربندی (به عنوان مثال، IS-IS یا OSPF) را در صورت نیاز اضافه کنید.
وقتی از توپولوژی آزمایشگاه راضی بودید، اجرا کنید ایجاد netlab و فایل های پیکربندی دستگاه را وارد خواهید کرد node_files اشاره گر
من ایده خوبی برای انتقال فایل های پیکربندی به دستگاه های آزمایشگاهی ندارم، مگر اینکه آزمایشگاه شما دارای یک شبکه مدیریت خارج از محدوده باشد، در این صورت می توانید نام های کاربری اضافه کنید (ansible_user، رمزهای عبور (ansible_ssh_pass) و آدرس های IP مدیریت (mgmt.ipv4) پارامترهای هر گره در توپولوژی آزمایشگاه و استفاده اولیه netlab فرمان برای استقرار تنظیمات.




