Sander Smith
Sander Smith

Reputation: 1437

Determining if an RTSP server is running and needs authentication

I know that port 554 (typically RTSP) is open at a certain IP address. I'd like to be able to determine:

I'd also like to do this in as lightweight a fashion as possible. I don't need to access the video stream.

After looking through the RTSP spec I realized that I could simply open a TCP socket and send the following commands:

OPTIONS * RTSP/1.0<CRLF>
CSeq: 1<CRLF>

When I tried this against many servers I found that a handful responded with

RTSP/1.0 200 OK
CSeq: 1
<a bunch of other stuff>

This is to be expected. However, most requests that I made timed out. This leads me to believe that these resources require authentication or I'm doing something fundamentally wrong.

I'm guessing that most servers will respond with a 401 if authentication is required, so I'm probably doing something wrong. Any ideas?

Upvotes: 1

Views: 1274

Answers (1)

Murad Tagirov
Murad Tagirov

Reputation: 816

Please refer to RFC2326 of the RTSP protocol: RFC2326

D.1.2 Authentication-enabled

In order to access media presentations from RTSP servers that require authentication, the client MUST additionally be able to do the following:

 * recognize the 401 status code;
 * parse and include the WWW-Authenticate header;
 * implement Basic Authentication and Digest Authentication.

Upvotes: 1

Related Questions