Online Connections

From PS4 Developer wiki
Jump to: navigation, search

Note: there is some reference on the talk page


Online Connections[edit]

Game Related[edit]

(Playroom used for example URL's)

Game Description File: http://tmdb.np.dl.playstation.net/tmdb2/CUSA00001_00_C32A667A087A40C2AD1889435907AA4B0D9DBA1F/CUSA00001_00.json

Game Update Description File: http://gs2.ww.prod.dl.playstation.net/gs2/ppkgo/prod/CUSA00001_00/4/f_3b8e420561f0b85ff65ac428a15092895f3131e8c4cfd63b1547b32adb6d8370/f/IP9100-CUSA00001_00-PLAYROOM00000000-A0102-V0100.json

Game Update .pkg File: http://gs2.ww.prod.dl.playstation.net/gs2/ppkgo/prod/CUSA00001_00/4/f_3b8e420561f0b85ff65ac428a15092895f3131e8c4cfd63b1547b32adb6d8370/f/IP9100-CUSA00001_00-PLAYROOM00000000-A0102-V0100.pkg

Guides[edit]

Tools[edit]

Network connections by system[edit]

useragent header host
btest/1.0 libhttp/1.50 (PlayStation 4) POST /networktest/post_128 HTTP/1.1

GET /networktest/get_2m HTTP/1.1

post.net.playstation.net

get.net.playstation.net

Download/1.00 libhttp/1.50 (PlayStation 4)
Download/1.00 libhttp/1.61 (PlayStation 4)
GET /update/ps4/list/us/ps4-updatelist.xml HTTP/1.1
GET /update/ps4/list/eu/ps4-updatelist.xml HTTP/1.1
fus01.ps4.update.playstation.net
feu01.ps4.update.playstation.net
SystemLogger/1.0 (PlayStation 4 1.501) libhttp/1.50 (PlayStation 4)
SystemLogger/1.0 (PlayStation 4 1.610) libhttp/1.61 (PlayStation 4)
GET /update/ps4/list/us/ps4-updatelist.xml HTTP/1.1
GET /update/ps4/list/eu/ps4-updatelist.xml HTTP/1.1
fus01.ps4.update.playstation.net
feu01.ps4.update.playstation.net
close /update/ps4/image/2014_0528/sys_ce90f2e9274e4614ffde6934e08e4b6e/PS4UPDATE.PUP?dest=eu /update/ps4/image/2014_0528/rec_7f84e2f63d1f6a5b4348bb528b35f2d7/PS4UPDATE.PUP?dest=eu deu01.ps4.update.playstation.net
CONNECT ps4updptl.eu.np.community.playstation.net:443 ps4updptl.eu.np.community.playstation.net
PS4TitleMetadata/1.00 libhttp/1.50 (PlayStation 4) GET /tmdb2/CUSA00080_00_4ED0D1374CB128AC8E277C9A3145505220D6D93A/CUSA00080_00.json HTTP/1.1

GET /tmdb2/CUSA00129_00_44DB6A4F9C773AF95F0D697E14652EABC80BAEFB/CUSA00129_00.json HTTP/1.1
GET /tmdb2/CUSA00001_00_C32A667A087A40C2AD1889435907AA4B0D9DBA1F/CUSA00001_00.json HTTP/1.1

tmdb.np.dl.playstation.net
Mozilla/5.0 (PlayStation 4 1.51) AppleWebKit/536.26 (KHTML, like Gecko) CONNECT themis.dl.playstation.net:443 HTTP/1.1 themis.dl.playstation.net:443
Mozilla/5.0 (PlayStation 4 1.51) AppleWebKit/536.26 (KHTML, like Gecko) CONNECT sf.api.np.km.playstation.net:443 HTTP/1.1 sf.api.np.km.playstation.net:443
CONNECT asm.np.community.playstation.net:443 HTTP/1.1 asm.np.community.playstation.net
Mozilla/5.0 (PlayStation 4 1.51) AppleWebKit/536.26 (KHTML, like Gecko) CONNECT artcdnsecure.ribob01.net:443 HTTP/1.1 artcdnsecure.ribob01.net:443
Mozilla/5.0 (PlayStation 4 1.51) AppleWebKit/536.26 (KHTML, like Gecko) CONNECT api-p014.ribob01.net:443 HTTP/1.1 api-p014.ribob01.net:443
Mozilla/5.0 (PlayStation 4 1.51) AppleWebKit/536.26 (KHTML, like Gecko) CONNECT apicdn-p014.ribob01.net:443 HTTP/1.1 apicdn-p014.ribob01.net:443
CONNECT it-prof.np.community.playstation.net:443 HTTP/1.1 it-prof.np.community.playstation.net
CONNECT ps4updptl.eu.np.community.playstation.net:443 HTTP/1.1 ps4updptl.eu.np.community.playstation.net

nonretail:

Useragent of applications under "TV & Video"[edit]

This should cover all Media Services useragent:

useragent version vulnerability
1.000.051
1.01
1.06
1.07
1.500.000
1.501.000
1.510.000
1.520.000
1.600.000
1.610.000
1.620.000
1.700.000
1.710.000
1.720.000
1.740.000
1.750.000
1.760.000
2.000.000  ?
2.010.000  ?
2.020.000  ?
Mozilla/5.0 (PlayStation 4) AppleWebKit/531.3 (KHTML, like Gecko) SCEE/1.0 Nuanti/2.0 2.030.000  ?
2.040.000  ?
2.501.000  ?
2.508.000  ?
2.510.000  ?
2.550.000  ?
2.570.000  ?
3.000.000  ?
3.008.000  ?
3.100.000  ?
3.110.000  ?
3.150.000  ?

side reference: on Playstation 3 (WebMAF), the useragent is "Mozilla/5.0 (PlayStation 3) AppleWebKit/531.3 (KHTML, like Gecko) SCEE/1.0 Nuanti/2.0

Unsorted[edit]

ps4-eb servicelist.xml[edit]

 <?xml version="1.0" encoding="UTF-8"?>
 <servicelist version="1.0" platform="ps4">
   <service name="SNS001" default="allow">
   </service>
   <service name="SNS002" default="allow">
   </service>
   <service name="SNS003" default="allow">
   </service>
   <service name="SNS004" default="allow">
   </service>
   <service name="SNS005" default="deny">
     <allow country="jp"/>
   </service>
   <service name="SYS001" default="allow">
     <deny country="de"/>
   </service>
 </servicelist>

ps4-eb applaunchlink.xml[edit]

 <?xml version="1.0" encoding="UTF-8"?>
 <applaunchlink version="1.0">
   <system_info min_system_ver="01.700.000"/>
   <title_black_list>
   </title_black_list>
 </applaunchlink>

Port usage[edit]

ps3 side reference

Generic Port usage[edit]

Protocol Port(s) Usage Remarks
UDP 1-1023 System reserved local ports
TCP 80 PSN Shop / USB/BT headsets http web
TCP 443 PSN Shop https web ssl
TCP 1935 PSN generic
TCP/UDP 3478 Session Traversal Utilities for NAT / Simple Traversal of UDP Through NAT (STUN)
TCP/UDP 3478-3480 NP matching 2 utility default PSN Generic / PS Home
TCP 4000 groupMessaging Crossplatform Integration
TCP 8540-8579 System reserved local ports
TCP 8550 Deci Daemon
TCP over UDP-P2P 9293-9310 System reserved local ports
UDP-P2P virtual 32768-49999 Ephemeral ports
UDP-P2P virtual 32768-65535 System reserved local ports
TCP 49152-65535 Ephemeral ports
TCP over UDP-P2P 49152-65535 Ephemeral ports
UDP 49152-65535 Ephemeral ports
TCP over UDP-P2P 40000-65535 System reserved local ports

PlayStation 4 Discovery and Wake-up Utility[edit]

https://github.com/dsokoloski/ps4-wake
Copyright (C) 2014 Darryl Sokoloski <darryl@sokoloski.ca>

Requirements[edit]

In order to wake your PS4 remotely, the PS4 must be in Standby mode. Check the power management settings to enable Standby mode.

If you just wish to see the current status of your PS4, you do not require a "user credential" number.

For wake-up support, you need to obtain a "user credential" which requires a Vita that has already been paired with the PS4. You then need to capture and examine the initial few UDP packets sent from the Vita when launching the PS4 Link application. Under Unix-like (Linux, BSD, OSX) operating systems you can use tcpdump. The traffic must be captured from your home network's gateway in order to see these packets. Ensure the Vita is connecting to the PS4 through it's wired interface.

An example capture using tcpdump:

   # tcpdump -s0 -X -n -i <interface> udp and port 987

You'll be looking for a packet that looks like HTTP and contains the string 'user-credential:NNNNNNN'. Remember the "user credential" number.

Usage Overview[edit]

   Probe:
    -P, --probe
      Probe network for devices.
   Wake:
    -W, --wake <user-credential>
      Wake device using specified user credential.
   Options:
    -B, --broadcast
      Send broadcasts.
    -L, --local-port <port address>
      Specifiy a local port address.
    -H, --remote-host <host address>
      Specifiy a remote host address.
    -R, --remote-port <port address>
      Specifiy a remote port address (default: 987).
    -I, --interface <interface>
      Bind to interface.
    -j, --json
      Output JSON.
    -v, --verbose
      Enable verbose messages.

Examples[edit]

To search your whole network for a PS4:

   # ./ps4-wake -vP -B

To search via broadcasts using a specific network interface, eth0 for example:

   # ./ps4-wake -vP -B -I eth0

To send a probe directly to the PS4 using it's IPv4 address, 192.168.1.10 for example:

   # ./ps4-wake -vP -H 192.168.1.10

To wake-up your PS4 using 123456 as the "user credential":

   Via broadcast:
   # ./ps4-wake -vW 123456 -B
   Or, direct:
   # ./ps4-wake -vW 123456 -H 192.168.1.10

To Do[edit]

- Add support for multiple PS4 devices.