-
Notifications
You must be signed in to change notification settings - Fork 134
Description
In our on-premise setup, we observe that inbound SIP INVITEs are being rejected with a 486 code and the reason is shown as flood. As we analyzed the logs from both the SIP trunk provider that initiates the call (Genesys) and the livekit's SIP server, we saw that the system receives the INVITE and immediately rejects it and classifies it as "flood". When we test our setup with Twilio, we're able to receive and initiate calls successfully. Our setup fails at integrating Genesys. Some part of the logs that we collected are below:
SIP server:
{"log":"2025-10-31T09:20:51.016Z INFO sip redis/redis.go:142 connecting to redis ", "details": {'nodeID': '...', 'simple': 'true', 'addr': 'redis:6379'}}
{"log":"2025-10-31T09:20:51.075Z INFO sip sip/service.go:109 ringing interval ", "details": {'nodeID': '...', 'seconds': '1s'}}
{"log":"2025-10-31T09:20:51.075Z DEBUG sip sip/service.go:179 starting sip service ", "details": {'nodeID': '...', 'version': '0.0.1'}}
{"log":"2025-10-31T09:20:51.076Z INFO sip sip/client.go:77 client starting ", "details": {'nodeID': '...', 'local': '172.17.16.3', 'external': '172.17.16.3'}}
{"log":"2025-10-31T09:20:51.076Z INFO sip sip/server.go:239 server starting ", "details": {'nodeID': '...', 'local': '172.17.16.3', 'external': '172.17.16.3'}}
{"log":"2025-10-31T09:20:51.076Z INFO sip sip/server.go:174 sip signaling listening on ", "details": {'nodeID': '...', 'local': '172.17.16.3', 'external': '172.17.16.3', 'port': 5060, 'announce-port': 5060, 'proto': 'udp'}}
{"log":"2025-10-31T09:20:51.077Z INFO sip sip/server.go:197 sip signaling listening on ", "details": {'nodeID': '...', 'local': '172.17.16.3', 'external': '172.17.16.3', 'port': 5060, 'announce-port': 5060, 'proto': 'tcp'}}
{"log":"2025-10-31T09:20:51.077Z DEBUG sip sip/service.go:212 sip service ready ", "details": {'nodeID': '...'}}
{"log":"2025-10-31T09:20:51.077Z DEBUG sip service/service.go:111 starting service ", "details": {'nodeID': '...', 'version': '0.0.1'}}
{"log":"2025-10-31T09:20:51.077Z DEBUG begin listening on ", "details": {'nodeID': '...', 'caller': 'transport UDP ', 'net': 'UDP', 'addr': '[::]:5060'}}
{"log":"2025-10-31T09:20:51.077Z DEBUG sip service/service.go:145 service ready ", "details": {'nodeID': '...'}}
{"log":"2025-10-31T09:20:51.077Z DEBUG begin listening on ", "details": {'nodeID': '...', 'caller': 'transport TCP ', 'net': 'TCP', 'addr': '[::]:5060'}}
{"log":"2025-10-31T09:22:18.527Z INFO sip sip/inbound.go:178 processing invite ", "details": {'nodeID': '...', 'callID': '...', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '923054.........', 'sipTag': '...', 'sipCallID': '...'}}
{"log":"2025-10-31T09:22:18.541Z DEBUG sip sip/inbound.go:434 Rejecting inbound flood ", "details": {'nodeID': '...', 'callID': '...', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '923054.........', 'sipTag': '...', 'sipCallID': '...', 'jitterBuf': 'false'}}
{"log":"2025-10-31T09:22:18.541Z DEBUG Server transaction terminating ", "details": {'nodeID': '...', 'caller': 'transaction.Layer'}}
{"log":"2025-10-31T09:22:18.542Z DEBUG Server transaction destroyed ", "details": {'nodeID': '...', 'caller': 'transaction.Layer', 'tx': 'z9hG4bK3569CABF-EF93-4A3E-8EF6-2CF67D1F9BC5-14155__...__5060__INVITE'}}
{"log":"2025-10-31T09:22:18.542Z INFO sip sip/inbound.go:782 Closing inbound call ", "details": {'nodeID': '...', 'callID': '...', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '923054.........', 'sipTag': '...', 'sipCallID': '...', 'jitterBuf': 'false', 'status': 486, 'reason': 'flood'}}
{"log":"2025-10-31T09:22:18.542Z INFO sip sip/inbound.go:777 call statistics ", "details": {'nodeID': '...', 'callID': '...', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '923054.........', 'sipTag': '...', 'sipCallID': '...', 'jitterBuf': 'false', 'status': 486, 'reason': 'flood', 'stats': {'port':{'streams':0,'packets':0,'packets_ignored':0,'packets_input':0,'mux_packets':0,'mux_bytes':0,'audio_packets':0,'audio_bytes':0,'dtmf_packets':0,'dtmf_bytes':0},'room':{'input_packets':0,'input_bytes':0,'mixer_samples':0,'mixer_frames':0,'output_samples':0,'output_frames':0},'mixer':{'tracks':0,'tracks_total':0,'restarts':0,'mixes':0,'mixes_timed':0,'mixes_jump':0,'mixes_zero':0,'input_samples':0,'input_frames':0,'mixed_samples':0,'mixed_frames':0,'output_samples':0,'output_frames':0}}}}
{"log":"2025-10-31T09:22:18.546Z DEBUG Server transaction terminating ", "details": {'nodeID': '...', 'caller': 'transaction.Layer'}}
{"log":"2025-10-31T09:22:18.546Z DEBUG Server transaction destroyed ", "details": {'nodeID': '...', 'caller': 'transaction.Layer', 'tx': 'z9hG4bK3569CABF-EF93-4A3E-8EF6-2CF67D1F9BC5-14155__...__5060__INVITE'}}
{"log":"2025-10-31T11:38:11.510Z INFO sip sip/inbound.go:178 processing invite ", "details": {'nodeID': '...', 'callID': 'SCL_5S2i7QJuaqLK', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '2006', 'sipTag': '...', 'sipCallID': '...'}}
{"log":"2025-10-31T11:38:11.518Z DEBUG sip sip/inbound.go:434 Rejecting inbound flood ", "details": {'nodeID': '...', 'callID': 'SCL_5S2i7QJuaqLK', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '2006', 'sipTag': '...', 'sipCallID': '...', 'jitterBuf': 'false'}}
{"log":"2025-10-31T11:38:11.518Z DEBUG Server transaction terminating ", "details": {'nodeID': '...', 'caller': 'transaction.Layer'}}
{"log":"2025-10-31T11:38:11.518Z DEBUG Server transaction destroyed ", "details": {'nodeID': '...', 'caller': 'transaction.Layer', 'tx': 'z9hG4bK3569CABF-EF93-4A3E-8EF6-2CF67D1F9BC5-14479__...__5060__INVITE'}}
{"log":"2025-10-31T11:38:11.518Z INFO sip sip/inbound.go:782 Closing inbound call ", "details": {'nodeID': '...', 'callID': 'SCL_5S2i7QJuaqLK', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '2006', 'sipTag': '...', 'sipCallID': '...', 'jitterBuf': 'false', 'status': 486, 'reason': 'flood'}}
{"log":"2025-10-31T11:38:11.518Z INFO sip sip/inbound.go:777 call statistics ", "details": {'nodeID': '...', 'callID': 'SCL_5S2i7QJuaqLK', 'fromIP': '172.17.16.1', 'toIP': '...:5060', 'fromHost': '...', 'fromUser': '026278.....', 'toHost': '...', 'toUser': '2006', 'sipTag': '...', 'sipCallID': '...', 'jitterBuf': 'false', 'status': 486, 'reason': 'flood', 'stats': {'port':{'streams':0,'packets':0,'packets_ignored':0,'packets_input':0,'mux_packets':0,'mux_bytes':0,'audio_packets':0,'audio_bytes':0,'dtmf_packets':0,'dtmf_bytes':0},'room':{'input_packets':0,'input_bytes':0,'mixer_samples':0,'mixer_frames':0,'output_samples':0,'output_frames':0},'mixer':{'tracks':0,'tracks_total':0,'restarts':0,'mixes':0,'mixes_timed':0,'mixes_jump':0,'mixes_zero':0,'input_samples':0,'input_frames':0,'mixed_samples':0,'mixed_frames':0,'output_samples':0,'output_frames':0}}}}
{"log":"2025-10-31T11:38:11.519Z DEBUG Server transaction terminating ", "details": {'nodeID': '...', 'caller': 'transaction.Layer'}}
The trunks we defined:
{
"dispatch_rules": [
{
"agents": [
{
"agent_name": "agent-name",
"metadata": "inbound "
}
],
"name": "test_trunk-dispatch-rule",
"room_prefix": "call-",
"sip_dispatch_rule_id": "SDR_UkUki8xWZjEM",
"trunk_ids": [
"ST_zZiMNrCnqRNN"
]
},
{
"agents": [
{
"agent_name": "agent-name",
"metadata": "inbound "
}
],
"name": "test_trunk_2-dispatch-rule",
"room_prefix": "call-",
"sip_dispatch_rule_id": "SDR_dFueSmosdeyc",
"trunk_ids": [
"ST_ssXL59qLLt6e"
]
}
],
"status": "success",
"trunks": [
{
"krisp_enabled": false,
"name": "test_trunk_2",
"numbers": [
"+9026278....."
],
"sip_trunk_id": "ST_ssXL59qLLt6e"
},
{
"krisp_enabled": false,
"name": "test_trunk",
"numbers": [
"026278....."
],
"sip_trunk_id": "ST_zZiMNrCnqRNN"
},
{
"address": "...",
"auth_password": "",
"auth_username": "",
"name": "test_trunk",
"numbers": [
"026278....."
],
"sip_outbound_trunk_id": "ST_Th7VWDcRtQD6"
},
{
"address": "...",
"auth_password": "",
"auth_username": "",
"name": "test_trunk_2",
"numbers": [
"+9026278....."
],
"sip_outbound_trunk_id": "ST_d4DdZwVa9vcX"
}
]
}
The trunk routing we set up on the Genesys' side:
contact = <sip-server>:5060
cpn = 0262...
oos-check = 20
oos-force = 60
oos-options-max-forwards = 70
oosp-transfer-enabled = false
prefix = 923
I added several example phone numbers both based and not based on e.164 too, we tested different scenarios matching the incoming request although it was in vain. We tried:
- Deactivating the flood protection from the sip server configuration
- Creating trunks w/wo E.164 phone number format, matching the inbound call requests to the same format
Any ideas about the reason? The number that starts with 9230... has the 923 at the beginning as the Genesys' trunk routing rule, so actual number goes on like 92305235436798 where the phone number is 05235436798