PS3 Update and Hulu workarounds

UPDATE: So it turns out this fix was blocked by Sony pretty soon afterwards, meaning there was not a single way to get on PSN without that update. Which means Sony officially sucks. On the flip side, Anthony Ventura of California has decided to bring a lawsuit against Sony for disabling a paid-for feature in their consoles.

http://ps3.ign.com/articles/108/1086720p1.html

So I’m not a big fan of Sony’s decision to remove the Other OS functionality on the PS3 with the 3.21 patch. Sure, I’ve never used it, but I like the idea of one day putting linux on the box and running a super webserver off of it.

But that’s besides the point. Here I am with a Playstation that can no longer connect to the internet because I refuse to update the firmware. It’s within my rights to be able to use a device I bought the way I want as long as it’s not for criminal activity, right? Anyway, since I have to do a bit of work setting up a proxy for this fix, I figured I might as well enable Hulu on the console as well.

Behold! The steps needed to not only get your out-of-date PS3 back online, but also view Hulu without it being blocked!

First and foremost, I have no concern for Windows or Mac users. If I want to do something cool, it’s going to be in Linux. My webserver uses Debian, so I’ve got this part easier than most.

Make sure you’re doing this on a webserver. I have Apache installed on my box, but it doesn’t really matter what program it is, as long as your localhost can serve up files.

Install Squid proxy.

sudo apt-get install squid

Once you’ve got squid installed, we need to put in a perl rewrite script. I put mine in/usr/local/lib/ps3_update.pl

#!/usr/bin/perl
$|=1;
while(<>) {
s@.*/ps3-updatelist.txt@http://localhost/ps3-updatelist.txt@;
print;
}

Ok, now we have to edit the squid configuration file and put in all of the magic. Edit the squid config file at /etc/squid/squid.conf and add the line:

url_rewrite_program /usr/local/lib/ps3_update.pl

This tells the squid proxy to call the perl script file you made. It matches any server that ends with the ps3-updatelist.txt and replaces it with a link to your local webserver, where you’ll be saving a modified update file. Then you have to find the ACL section and add (or uncomment) both the references to Hulu and your internal network.

acl localnet src 192.168.0.0/16
acl hulu url_regex -i ^http://.*.hulu.com/.*

Make sure that 192.168.0.0/16 is your internal network subnet (this is default, so it should work, but I have mine set to 192.168.1.0/24). Then you’ll need to find the line:

http_access deny all

And immediately above it (in the default configuration for squid, at least), make sure both of these lines are uncommented.

http_access allow localhost
http_access allow localnet

And now add the user agent rewrite for Hulu by adding the following lines:

header_access User-Agent deny hulu
header_replace User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)

Sweet! Now you just need to restart squid to have those changes take effect.

sudo /etc/init.d/squid restart

Go to the root directory of your webserver (I think the default is /var/www/html for Apache) and pull down the PS3 update file.

wget http://fuse01.ps3.update.playstation.net/update/ps3/list/us/ps3-updatelist.txt

Then you’ll need to change the line in that file from:

Dest=84;CompatibleSystemSoftwareVersion=3.3000-;

to

Dest=84;CompatibleSystemSoftwareVersion=3.1500-;

and save the file.

That’s it for the server configuration! Now you just need to tell your Playstation 3 to connect to the internet through the squid proxy. Go to the network settings section on your console, and under manual configuration point to the ip address of your proxy server, on port 3128.

That should pretty much cover all of the PS3 network fixes you might want to do. So if you’ll excuse me, I’ll get back to watching Hulu on my 3.15 firmware Playstation. Oh, and feel free to post any comments if you have any questions.

Advertisements
PS3 Update and Hulu workarounds

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s