<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های علی کارگری</title><link>https://virgool.ir/feed/@ali78kargari</link><description></description><language>fa</language><pubDate>2026-11-11 21:26:12</pubDate><image><url>https://virgool.ir/images/default-avatar.jpg</url><title>علی کارگری</title><link>https://virgool.ir/@ali78kargari</link></image><item><title>نصب و اجرای NetAnim</title><link>https://virgool.ir/@ali78kargari/نصب-و-اجرای-netanim-blvgkrytrndd</link><description>برای نصب Net Anim دستورهای زیر رو میزنیمcd ns-allinone-3.39/netanim-3.109/&#xA;make clean #not needed in last version&#xA;qmake NetAnim.pro&#xA;makeبرای راه اندازی این ابزار  توی همون مسیر که هستیم دستور زیر رو میزنیم.دقت داشته باشید که چون محیط کار نرم افزار گرافیکیه باید ssh -X زده باشیم../NetAnimاگه باز شد، تبریک میگم:)اما تست NetAnim:ما برای اسکریپت first بررسی میکنیم ولی اصول کار همینهاولین کار اینه که در ابتدای کار بگیم از کتابخونه مربوط به NetAnim استفاده کن#include “ns3/netanim-module.h”در آخر و پیش از دستور زیرSimulator::Run();باید گرههایی که میخواهیم توی انیمیشن ببینیمشونو معرفی کنیم:AnimationInterface anim (“anim1.xml”);&#xA;anim.SetConstantPosition(nodes.Get(0), 10.0, 11.0 );  &#xA;anim.SetConstantPosition(nodes.Get(1), 20.0, 21.0 );در این چند خط منظور از anim1.xml فایل خروجی هست که میتونیم توی NetAnim بازش کنیم و نتیجه رو ببینیم. این فایل بعد از اجرای شبیه سازی توی مسیر زیر ساخته میشه&lt;Working Dir&gt;/ns-allinone-3.39/ns-3.39/گرههای شماره صفر و یک در خطوط دوم سوم معرفی شدند که هرکدوم در موقعیتهای افقی و عمودی (10،11) و (20،21) قرار میگیرند.بعد از اینکارها باید بیلد و اجرا کنیم (اسم فایل من myfirstanim.cc هست). ./ns3 build&#xA;./ns3 run scratch/myfirstanimحالا باید netAnim رو باز کنیم و از دکمۀ open در بالا سمت راست فایل xml ساخته شده رو بهش بدیم.cd ../netanim-3.109/&#xA;./NetAnimنتیجه کار مثل پایینه.علاوه بر این، مواردی مثل آماری که نشونمون هم میده قابل توجهه.</description><category>علی کارگری</category><author>علی کارگری</author><pubDate>Mon, 31 Jul 2023 17:28:45 +0330</pubDate></item><item><title>نصب و دستورهای اولیه ns-3</title><link>https://virgool.ir/@ali78kargari/نصب-و-دستورهای-اولیه-ns-3-lp4ubuows9nh</link><description>ابتدا باید متعلقات رو نصب کنیم.sudo apt update&#xA;sudo apt install qt5-default build-essentialبرای نصب cmake از دستور موجود در این لینک استفاده میکنیمنصب ns-3 سرراسته.wget https://www.nsnam.org/release/ns-allinone-3.39.tar.bz2&#xA;tar xjf ns-allinone-3.39.tar.bz2&#xA;cd ns-allinone-3.39/&#xA;./build.py --enable-examples --enable-testsمن نسخه فعلی رو نصب کردم که میشه 3.39 بنابراین دستورهایی که دارم یه کم متفاوته با نسخه های قدیمیتر.برای تست کارایی دستور زیر رو وارد کنید../ns3 run hello-simulatorباید با پیام hello-simulator روبرو شویم.برای اجرای اسکریپتهای نوشته شده باید اونا رو توی مسیر scratch قرار بدیم. ما فایل نمونۀ اول خودشونو میخواهیم اجرا کنیم.cp examples/tutorial/first.cc scratch/myfirst.cc&#xA;./ns3 build&#xA;./ns3 run scratch/myfirstکه یه همچین نتیجه ای میدهAt time +2s client sent 1024 bytes to 10.1.1.2 port 9&#xA;At time +2.00369s server received 1024 bytes from 10.1.1.1 port 49153&#xA;At time +2.00369s server sent 1024 bytes to 10.1.1.1 port 49153&#xA;At time +2.00737s client received 1024 bytes from 10.1.1.2 port 9اوکی؟:)توضیح اینکه چه اتفاقی می افته به خوبی توی مرجع زیر داده شده.Wireless Network Simulation, A Guide using Ad Hoc Networks and the ns-3 simulator, chapter 4.علاوه بر اون یه جزوۀ خلاصه و مفید از ns-3 هست به نام ns-3 cheat book که میتونید بهش مراجه کنید.</description><category>علی کارگری</category><author>علی کارگری</author><pubDate>Sun, 30 Jul 2023 21:14:22 +0330</pubDate></item><item><title>پیش از شروع کار</title><link>https://virgool.ir/@ali78kargari/پیش-از-شروع-کار-hzncksmsbz7w</link><description>پس از نصب اوبونتو روی VM باید یه سری کارها کرد.بعد از تعیین منابع و تنظیم واسطهای شبکه (یک واسط NAT یا بریج و یک واسط host-Only) اولین کار اینه که باید تنظیمات این کارتها رو داخل لینوکس بررسی کنیم. دستورهای مفیدip a&#xA;ifconfig -a&#xA;sudo dhclientاگر ifconfig کار نکرد با دستور زیر نصبش میکنیم.sudo apt update&#xA;sudo apt install net-toolsاصولا بعد از زدن dhclient، اینترفیس مربوط به host-only با پروتکل DHCP آیپی میگیره. آیپی رو یادداشت میکنیم از توی سیستم هاست بهش ssh میزنیم.ssh username@ipاما احتمالا اگه بخواهیم از روت ssh بزنیم به مشکل میخوریم. برای اینکار اول میاییم پیکربندی ssh-server رو چک میکنیم:sudo vim /etc/ssh/sshd_configتغییرات زیر رو اعمال میکنیم---#PermitRootLogin prohibit-password&#xA;+++PermitRootLogin yesبعدش هم پسورد یوزر روت رو عوض (یا آپدیت) میکنیمsudo passwd rootو الان میتونیم به root یکراستssh بزنیم.ssh root@ipموضوع بعدی تغییر DNS برای دور زدن تحریمهاست (smart DNS). میتونیم خیلی راحت با ویرایش فایل /etc/hostname تغییرش بدیم (موقت) یا بطور دایم با پیکربندی NetPlan این کار رو بکنیم:sudo vim /etc/netplan/00-installer-config.yamlاین فایل yaml رو خیلی راحت میشه ویرایش کرد. از نمونه های زیر ایده میگیریم برای تعریف DNS و IP در اینترفیسی که میخواهیم.آدرس IP های شکن ایناست: network:&#xA;  version: 2&#xA;  renderer: networkd&#xA;  ethernets:&#xA;    ens5:&#xA;      addresses: []&#xA;      dhcp4: yes&#xA;      nameservers:&#xA;        addresses: [178.22.122.100, 185.51.200.2]یا برای اختصاص دستی IP :network:&#xA;    version: 2&#xA;    renderer: networkd&#xA;    ethernets:&#xA;       enp0s3:&#xA;       dhcp4: no&#xA;       addresses: [192.168.1.230/24]&#xA;       gateway4: 192.168.1.254&#xA;       nameservers:&#xA;          addresses: [8.8.4.4,8.8.8.8]بعد از تنظیم دستور زیر این تغییرات را اعمال میکنه.sudo netplan applyمعمولا به بسته های زیر هم نیاز پیدا میکنیم. پس همین اول کار نصبشون کنیم بهتره.sudo apt update&#xA;sudo apt install build-essential&#xA;...تمام.</description><category>علی کارگری</category><author>علی کارگری</author><pubDate>Sun, 30 Jul 2023 17:54:30 +0330</pubDate></item></channel></rss>