-
-
Save a-a/f70ba370ffee33e3c1f97072784f3ff4 to your computer and use it in GitHub Desktop.
# Force Juniper SRX110H2 to accept VDSL PIC firmware from Juniper jfirmware 17 release (For SRX300 series?) | |
# it might work, it might not. do this at your own risk etc. i think it rolls back. haven't tried lol. | |
# Testing using latest 17.4 release specifically from https://support.juniper.net/support/downloads/?p=junos-srx#sw. | |
# At time of writing, "latest" was jfirmware-srxsme-17.4R3.16-signed.tgz - copy your shit to a fat32 usb | |
# Make usb mountpoint (if you haven't already) | |
root@% mkdir /var/tmp/usb | |
# Mount the USB | |
root@% mount_msdosfs /dev/da0s1 /var/tmp/usb | |
# CD to the usb | |
root@% cd /var/tmp/usb | |
# Make a new folder to extract our crap to, and cd into it | |
root@% mkdir inside | |
root@% cd inside | |
# Extract first level of archive so we can get at the next part | |
root@% tar -zxf - < ../jfirmware-srxsme-17.4R3.16-signed.tgz | |
# Extract second level of archive so we can get to the actual package file | |
root@% tar -zxf - < ./jfirmware-srxsme-17.4R3.16.tgz | |
# You just extracted an iso9660 file - mount it, this contains our files. | |
root@% /sbin/mount_iso --force /cf/var/tmp/usb/inside/packages/jfirmware-srxsme-17.4R3.16 /packages/mnt/jfirmware-srxsme-17.4R3.16 jfirmware-srxsme | |
# Symlink jfirmware-srxsme to the new version | |
root@% ln -s /packages/mnt/jfirmware-srxsme-17.4R3.16/ /packages/mnt/jfirmware-srxsme | |
# Pop into cli, check for new firmware | |
root@% cli | |
# Show if we have different current vs available versions | |
root> show system firmware | |
Part Type Tag Current Available Status | |
version version | |
FPC 1 | |
PIC 0 VDSLBCM 10 2.16.0 2.20.0 OK <---- HERE! | |
Routing Engine 0 RE BIOS 0 2.5 2.8 OK | |
Routing Engine 0 RE BIOS Backup 1 2.5 2.8 OK | |
Routing Engine 0 RE FPGA 14 1.0.0 1.0.0 OK | |
root> | |
# If we do, lets request an upgrade | |
root> request system firmware upgrade pic fpc-slot 1 | |
Part Type Tag Current Available Status | |
version version | |
FPC 1 | |
PIC 0 VDSLBCM 10 2.16.0 2.20.0 OK | |
Perform indicated firmware upgrade ? [yes,no] (no) yes | |
Firmware upgrade initiated. | |
root> | |
# Hammer sh sys firm a few times until the output changes from ERASING to FLASHING to finally.... UPGRADED SUCCESSFULLY | |
root> show system firmware | |
Part Type Tag Current Available Status | |
version version | |
FPC 1 | |
PIC 0 VDSLBCM 10 2.16.0 2.20.0 UPGRADED SUCCESSFULLY | |
Routing Engine 0 RE BIOS 0 2.5 2.8 OK | |
Routing Engine 0 RE BIOS Backup 1 2.5 2.8 OK | |
Routing Engine 0 RE FPGA 14 1.0.0 1.0.0 OK | |
root> | |
# Now restart FPC 1 and wait a while, you should have new firmware loaded | |
root> restart fpc 1 | |
FPC 1 restarted | |
root> | |
# Now clean up (if you want to, im not your mom) | |
root> exit | |
root@% rm /packages/mnt/jfirmware-srxsme | |
root@% umount /cf/var/packages/mnt/jfirmware-srxsme-18.4R3.16 | |
root@% umount /cf/var/tmp/usb | |
# Enjoy having vectoring (from at least 2.16.0) plus whatever 2.20.0 gives you, i couldn't be bothered to read the release notes to figure it out when there's no seperate notes for the firmwares |
Where might I be able to find jfirmware-srxsme-17.4R3.16-signed.tgz ?
Hi,
i've done the procedure described but I can't find the firmware to upgrade in the show system firmware. I need the 2.16 :(
Part Type Tag Current Available Status
version version
FPC 1
PIC 0 VDSLBCM 10 2.10.0 OK
Routing Engine 0 RE BIOS 0 2.8 2.8 OK
Routing Engine 0 RE BIOS Backup 1 2.8 2.8 OK
Routing Engine 0 RE FPGA 14 1.0.0 OK
Having the same issue. @ibook79 did you find a resolution?
Hi, I've installed this version... https://www.dropbox.com/s/aoup77dd39xl1eg/jfirmware-srxsme-12.3X48-D35.7-signed.tgz?dl=0
and now the firmware is ok. I have the junos junos-srxsme-12.3X48-D105.4-domestic.tgz installed on board before.
Thanks. I'll use this in future.
In the interim I modified jfirmware-srxsme-21.3R2-signed.tgz to reduce the min-release and allow it to install. This allowed me to install firmware 2.20.0. I'll post some instructions in the morning.
Thanks a lot. Can you upload somewhere this file?
https://www.dropbox.com/s/bctkr4oj7lle279/jfirmware-srxsme-21.3R1.9-modified.tgz?dl=0
I'll leave this up for a limited time, however people should follow the below instructions to create the package themselves in the future.
- Determine the version of JunOS that you have installed. This will determine what you set the min-release to.
- Download the version of jfirmware that you want to patch from https://support.juniper.net/support/downloads/?p=junos-srx#sw
- Within jfirmware-srxsme-xxxx-signed.tgz find the +INSTALL file.
- Find the version_check() function and modify the min_release version to match or be below your JunOS version (eg. "local min_release=${1:-21.3}" becomes "local min_release=${-12.3}")
- Within jfirmware-srxsme-xxxx-signed.tgz remove all hash files (eg. jfirmware-srxsme-xxxx.tgz.sha1, etc.). If these are not removed the package installer will attempt to compare the jfirmware against the hash, which will fail as we have modified the contents of the jfirmware
- Within jfirmware-srxsme-xxxx-signed.tgz enter the jfirmware-srxsme-xxxx.tgz archive
- Modify the min_release in jfirmware-srxsme-xxxx-signed.tgz/jfirmware-srxsme-xxxx.tgz/+INSTALL the same way as step 4.
- Modify the min_release in jfirmware-srxsme-xxxx-signed.tgz/jfirmware-srxsme-xxxx.tgz/+REQUIRE the same way as step 4
- Re-tar and compress as necessary
- Install package onto SRX110 as per normal "request system software add jfirmware-srxsme-xxxx-modified.tgz"
- Check that new firmware is now available "show system firmware"
- Flash firmware as per normal "request system firmware upgrade pic fpc-slot 1"
Great Work! :)
Thanks!
https://www.dropbox.com/s/bctkr4oj7lle279/jfirmware-srxsme-21.3R1.9-modified.tgz?dl=0
I'll leave this up for a limited time, however people should follow the below instructions to create the package themselves in the future.
1. Determine the version of JunOS that you have installed. This will determine what you set the min-release to. 2. Download the version of jfirmware that you want to patch from https://support.juniper.net/support/downloads/?p=junos-srx#sw 3. Within jfirmware-srxsme-xxxx-signed.tgz find the +INSTALL file. 4. Find the version_check() function and modify the min_release version to match or be below your JunOS version (eg. "local min_release=${1:-21.3}" becomes "local min_release=${-12.3}") 5. Within jfirmware-srxsme-xxxx-signed.tgz remove all hash files (eg. jfirmware-srxsme-xxxx.tgz.sha1, etc.). If these are not removed the package installer will attempt to compare the jfirmware against the hash, which will fail as we have modified the contents of the jfirmware 6. Within jfirmware-srxsme-xxxx-signed.tgz enter the jfirmware-srxsme-xxxx.tgz archive 7. Modify the min_release in jfirmware-srxsme-xxxx-signed.tgz/jfirmware-srxsme-xxxx.tgz/+INSTALL the same way as step 4. 8. Modify the min_release in jfirmware-srxsme-xxxx-signed.tgz/jfirmware-srxsme-xxxx.tgz/+REQUIRE the same way as step 4 9. Re-tar and compress as necessary 10. Install package onto SRX110 as per normal "request system software add jfirmware-srxsme-xxxx-modified.tgz" 11. Check that new firmware is now available "show system firmware" 12. Flash firmware as per normal "request system firmware upgrade pic fpc-slot 1"
Any chance you could post a new, active link?
Where might I be able to find jfirmware-srxsme-17.4R3.16-signed.tgz ?
I would like to do this for my SRX210 at home..