# Cisco IP Phone Firmware Upgrade and Full SIP Setup on Linux (DHCP + TFTP)

**URL:** <https://forum.mysup.ir/t/topic/518>\
**Category:** ویپ\
**Tags:** cisco\
**Created:** [دسامبر 28، 2025، 2:23ب.ظ UTC](https://forum.mysup.ir/t/topic/518 "2025-12-28T14:23:35Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![radinoo](https://forum.mysup.ir/user_avatar/forum.mysup.ir/radinoo/32/1356_2.png) [@radinoo](https://forum.mysup.ir/u/radinoo)\
**Post date:** [دسامبر 28، 2025، 2:23ب.ظ UTC](https://forum.mysup.ir/t/topic/518/1 "2025-12-28T14:23:35Z")

</div>

در این پست باهم میبینیم که چطوری با لپتاپ **لینوکسی** (Ubuntu-based) خودمون میتونیم Firmware تلفن های سیسکو رو تغییر بدیم و روی اون داخلی ست کنیم.

در این سناریو از لپتاپ به عنوان DHCP server و TFTP server استفاده میکنیم.

مرحله 1 **آماده سازی اینترفیس شبکه**

ابتدا باید به کارت شبکه ای که تلفن به اون وصل میشه یه Static IP (دستی) بدیم.

بعد از باز کردن ترمینال (ctrl+alt+t) با دستور زیر لیستی از کارت شبکه های روی سیستم خودمون رو به دست میاریم :‌

```auto
ip a

```

 ![image](https://forum.mysup.ir/uploads/default/original/2X/1/146780b195818307996a78a768486d32d76ffb6f.png)

نکته : به طور کلی اینترفیس هایی که با e شروع میشوند مربوط به Ethernet هستند.

طبق تصویر بالا اینجا اینترفیس مد نظر ما enp7s0 هست.

با دستورات زیر آی‌پی استاتیک تعریف میکنیم :‌

```auto
sudo ip addr add 192.168.50.1/24 dev enp7s0sudo 
ip link set enp7s0 up

```

برای جلو گیری از تداخل وای‌فای رو با دستور زیر خاموش میکنیم :‌

```auto
nmcli radio wifi off

```

(نکته : برای روشن کردن وای‌فای کافیست به جای off از on در آخر دستور استفاده کنید.)

**مرحله 2 نصب سرویس های مورد نیاز**

با دستورات زیر بعد یک آپدیت مختصر سرویس های مورد نظر رو نصب میکنیم :‌

```auto
sudo apt update
sudo apt install isc-dhcp-server tftpd-hpa -y

```

مرحله ۳ تنظیم DHCP Server

ویرایش فایل تنظیمات :

```auto
sudo vim /etc/dhcp/dhcpd.conf

```

( اینجا از ویرایشگر متن vim استفاده کردم که اگر راحت نیستید میتونید از nano یا هرچیزی استفاده کنید :)) )

نمونه کانفیگ :‌

```auto
subnet 192.168.50.0 netmask 255.255.255.0 {range 192.168.50.100 192.168.50.150;option routers 192.168.50.1;option domain-name-servers 8.8.8.8;option tftp-server-name “192.168.50.1”;}

```

مشخص کردن اینترفیس :‌

```auto
sudo vim /etc/default/isc-dhcp-server 

```

```auto
INTERFACESv4="enp7s0"

```

ری استارت سرویس :‌

```auto
sudo systemctl restart isc-dhcp-server
sudo systemctl status isc-dhcp-server

```

بررسی لاگ های DHCP :

```auto
journalctl -u isc-dhcp-server -f

```

در صورت موفقیت لاگ هایی مانند زیر دیده میشود :‌

```auto
DHCPDISCOVER
DHCPOFFER
DHCPREQUEST
DHCPACK

```

**مرحله ۴ راه اندازی Tftp Server :**

دایرکتوری پیش‌فرض :‌

```auto
/var/lib/tftpboot

```

بررسی وضعیت :

```auto
sudo systemctl status tftpd-hpa

```

مشاهده لاگ ها :

```auto
sudo journalctl -u tftpd-hpa -f

```

مشاهده پکت ها :‌

```auto
sudo tcpdump -i enp7s0 port 69

```

فایل های Firmware رو به دایرکتوری پیش‌فرض که بالاتر مشخص کردیم کپی کنید.

تنظیم دسترسی ها :

```auto
sudo chown -R tftp:tftp /var/lib/tftpboot
sudo chmod -R 755 /var/lib/tftpboot

```

**مرحله 5**  
تلفن رو به لپتاپ متصل کنید و اون رو ریست فکتوری کنید، منتظر دانلود شدن فایل ها باشید (ممکنه تا چند دقیقه طول بکشه و تلفن چند بار ریست بشه.) .

نکته آخر :‌ در این مرحله من پیشنهاد میکنم توی دو ترمینال مختلف یا داخل یک ترمینال با ابزار tmux لاگ هر دو سرویس رو چک کنید.
