Forum Discussion
Sideband Loop Appears to Only Execute Once
I have a sideband loop to send received TCP data to a new UDP destination. It works for the first send of data from the source, but subsequent sends it does not. The result from the send shows as sent and the correct number of bytes.
What a I missing?
when CLIENT_ACCEPTED {
log local0. "Client Accepted From [IP::client_addr] To Port [TCP::local_port clientside] "
log local0. "LB Information 1 [LB::server name] [LB::server addr] [LB::server port]"
TCP::collect
}
when SERVER_CONNECTED {
log local0. "client port = [TCP::client_port], server port = [TCP::server_port]"
log local0. "LB Information 2 [LB::server name] [LB::server addr] [LB::server port]" }
when CLIENT_DATA {
set tcplen [TCP::payload length]
log local0. "TCP Payload Length Recevied ($tcplen)"
set recvdata [TCP::payload]
log local0. "Payload Recevied ($recvdata)"
set new_udp_out [connect -protocol UDP -timeout 3000 -idle 30 -status conn_status 10.15.215.22:4000]
set send_info [send -timeout 3000 -status send_status $new_udp_out $recvdata]
close $new_udp_out
release to move on with other processing
TCP::release
call collect again to keep this routing going
TCP::collect
}
- DamonL_356592
Nimbostratus
I should add that that I am using a netcat listener on receive side of the sideband connection. I am using it with these arguments "ncat -u -l UDP_PORT"
perhaps it's an issue with netcat not showing me the output?
- DamonL_356592
Nimbostratus
it appears to be an issue with netcat and that it locks onto a connection... since each of my sideband connections uses a randomly generated source port, it only works on first send.
if I use just straight wireshark, I see the sends from each client packet.
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com