For more information regarding the security incident at F5, the actions we are taking to address it, and our ongoing efforts to protect our customers, click here.

Forum Discussion

Cory_Hill_34019's avatar
Cory_Hill_34019
Icon for Nimbostratus rankNimbostratus
Mar 09, 2007

Rewriting RTSP response

I am running 9.2.4 on a 1500 with an EA license. I have an RTSP VIP that is NAT'd to an external IP address. Because RTSP is not NAT-friendly, I am using Darwin Streaming Server's alt_transport_src_ipaddr setting so that the external address of the VIP is embedded in the RTSP packets instead of the internal address of the Darwin servers.

 

 

The problem I am having is that the Big IP replaces the external VIP address in the packets with the internal VIP address, and this behavior doesn't seem to be configurable. I created a stream profile to replace the internal address with the external one but it doesn't affect the RTSP packets for some reason (order of operations?) So I'm trying to accomplish this with an iRule. Here's what I have:

 

 

when RTSP_RESPONSE {

 

regsub -all "1.1.1.1" [RTSP::payload] "2.2.2.2" fixeddata

 

RTSP::payload replace 0 [RTSP::payload length] $fixeddata

 

RTSP::release

 

}

 

 

But this doesn't compile. I get the following:

 

 

011c0003:3: Rule checker ::tclCheck::checkScript did not complete (invalid command name "allow").

 

 

Again, I am running with the EA license so I do have access to the RTSP functionality. Any ideas why my iRule doesn't work or if there is another way to accomplish this?

2 Replies

  • Colin_Walker_12's avatar
    Colin_Walker_12
    Historic F5 Account
    Perhaps I'm missing something, but I do'nt see "allow" in your iRule at all. Maybe there's a problem elsewhere in your config?

     

     

    Colin
  • That was pretty much my point. It seems that the RTSP iRule commands don't work. I don't know how a problem in my config would keep an iRule from compiling.