اوبونتو یک سیستم عامل شگفت انگیز است، من مدت زیادی است که با سرور اوبونتو کار نکرده ام و هیچ فایده ای برای ارتقا دسکتاپ از نسخه پایدار وجود ندارد. و چندی پیش مجبور شدم با آخرین نسخه سرور اوبونتو 18.04 سر و کار داشته باشم، تعجب من حد و مرزی نداشت وقتی متوجه شدم که بی نهایت از زمان عقب مانده ام و نمی توانم شبکه ای راه اندازی کنم زیرا سیستم قدیمی خوب برای راه اندازی رابط های شبکه توسط ویرایش فایل /etc/network /interfaces به پایان رسیده است. و چه چیزی جایگزین آن شد؟ چیزی وحشتناک و در نگاه اول کاملاً غیرقابل درک، با "Netplan" آشنا شوید.
فایل های پیکربندی در امتداد مسیر /etc/netplan/filename.yaml قرار دارند، بین هر بلوک باید + 2 فاصله وجود داشته باشد.
1) هدر استاندارد به شکل زیر است:
network:
version: 2
renderer: networkd
ethernets:
enp3s0f0:
dhcp4:no
بیایید به آنچه که اکنون انجام داده ایم نگاه کنیم:
- شبکه: - این شروع بلوک پیکربندی است.
- renderer: networkd - در اینجا مدیر شبکه ای را که از آن استفاده خواهیم کرد نشان می دهیم، این شبکه یا NetworkManager است
- نسخه: 2 - در اینجا، همانطور که من متوجه شدم، نسخه YAML است.
- اترنت: - این بلوک نشان می دهد که ما پروتکل اترنت را پیکربندی خواهیم کرد.
- enps0f0: - مشخص کنید که کدام آداپتور شبکه را پیکربندی خواهیم کرد.
- dhcp4:no - DHCP v4 را به ترتیب برای 6 v6 dhcp6 غیرفعال کنید
2) بیایید سعی کنیم آدرس های IP را اختصاص دهیم:
enp3s0f0:
dhcp4:no
macaddress: bb:11:13:ab:ff:32
addresses: [10.10.10.2/24, 10.10.10.3/24]
gateway4: 10.10.10.1
nameservers:
addresses: 8.8.8.8
در اینجا سرور poppy، ipv4، gateway و dns را تنظیم می کنیم. توجه داشته باشید که اگر به بیش از یک آدرس IP نیاز داریم، آنها را با کاما با فاصله اجباری بعد از آن جدا مینویسیم.
3) در صورت نیاز چه کنیم
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
- bonds: - بلوکی که توضیح می دهد که پیوند را پیکربندی خواهیم کرد.
- bond0: - نام رابط دلخواه.
- رابطها: - مجموعهای از واسطها که در یک پیوند جمعآوری شدهاند، "همانطور که قبلاً گفته شد، اگر چندین پارامتر وجود داشته باشد، آنها را در براکت توصیف میکنیم."
- پارامترها: - بلوک تنظیمات پارامتر را توصیف کنید
- حالت: - حالتی را که باندینگ کار می کند را مشخص کنید.
- mii-monitor-interval: — فاصله مانیتورینگ را روی ۱ ثانیه تنظیم کنید.
در داخل بلوک با نام bond، می توانید پارامترهایی مانند آدرس ها، gateway4، مسیرها و غیره را نیز پیکربندی کنید.
ما افزونگی را برای شبکه خود اضافه کرده ایم، اکنون تنها چیزی که باقی مانده است نصب است
vlans:
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
gateway: 10.10.10.1
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
- vlans: - بلوک پیکربندی vlan را اعلام کنید.
- vlan10: - نام دلخواه رابط vlan.
- شناسه: - برچسب vlan ما.
- پیوند: - رابطی که از طریق آن vlan قابل دسترسی خواهد بود.
- مسیرها: - یک بلوک توصیف مسیر را اعلام کنید.
- — به: — آدرس/زیر شبکه ای که مسیر به آن نیاز است را تنظیم کنید.
- via: - دروازه ای را که زیرشبکه ما از طریق آن قابل دسترسی خواهد بود را مشخص کنید.
- on-link: - نشان میدهیم که مسیرها باید همیشه هنگام بالا آمدن پیوند ثبت شوند.
به نحوه قرار دادن فضاها توجه کنید؛ این در YAML بسیار مهم است.
بنابراین ما رابط های شبکه را توضیح دادیم، پیوند ایجاد کردیم و حتی vlan ها را اضافه کردیم. بیایید پیکربندی خود را اعمال کنیم، دستور netplan application پیکربندی ما را از نظر خطا بررسی می کند و در صورت موفقیت آمیز بودن آن را اعمال می کند.بعد، پیکربندی به خودی خود با راه اندازی مجدد سیستم افزایش می یابد.
با جمع آوری تمام بلوک های کد قبلی، این چیزی است که به دست آوردیم:
network:
version: 2
renderer: networkd
ethernets:
enp3s0f0:
dhcp4: no
ensp3s0f1:
dhcp4: no
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
vlan20:
id: 20
link: bond0
dhcp4: no
addresses: [10.10.11.2/24]
gateway: 10.10.11.1
nameserver:
addresses: [8.8.8.8]
اکنون شبکه ما آماده بهره برداری است، همه چیز آنطور که در ابتدا به نظر می رسید ترسناک نبود و کد بسیار زیبا و خواندنی بود. PC از شما برای netplan متشکرم یک کتابچه راهنمای عالی در لینک وجود دارد
منبع: www.habr.com