Using SIP, why Asterisk sometimes starts skinny session

Hi All,

I’m using SIP configured in Asterisk. Sometimes when I dial call it starts skinny session and voice gets degraded for few seconds. I cant figure out why skinny session starts.

logs are pasted below

== Using SIP RTP CoS mark 5
– Called SIP/909XXXXXXX/151XXXXXXXX
– SIP/909XXXXXXX-00005906 is making progress passing it to SIP/XXX-00005905
– SIP/909XXXXXXX-00005906 answered SIP/XXX-00005905
– Starting Skinny session from 119.29.182.108
[2016-10-06 15:21:56] WARNING[11690]: chan_skinny.c:6888 get_input: Skinny Client sent less data than expected. Expected 4 but got 0.
[2016-10-06 15:21:56] WARNING[11690]: chan_skinny.c:6892 get_input: Skinny Client was lost, unregistering
– Ending Skinny session from 119.29.182.108 (bad input)
– Starting Skinny session from 119.29.182.108
[2016-10-06 15:21:56] WARNING[11691]: chan_skinny.c:6907 get_input: Skinny packet too large (542393679 bytes), max length(2000 bytes)
[2016-10-06 15:21:56] WARNING[11691]: chan_skinny.c:6918 get_input: Skinny Client sent less data than expected.
– Ending Skinny session from 119.29.182.108 (bad input)
– Starting Skinny session from 119.29.182.108
[2016-10-06 15:21:57] WARNING[11695]: chan_skinny.c:6907 get_input: Skinny packet too large (542393679 bytes), max length(2000 bytes)
[2016-10-06 15:21:57] WARNING[11695]: chan_skinny.c:6918 get_input: Skinny Client sent less data than expected.
– Ending Skinny session from 119.29.182.108 (bad input)
– Starting Skinny session from 119.29.182.108
[2016-10-06 15:21:58] WARNING[11696]: chan_skinny.c:6907 get_input: Skinny packet too large (542393679 bytes), max length(2000 bytes)
[2016-10-06 15:21:58] WARNING[11696]: chan_skinny.c:6918 get_input: Skinny Client sent less data than expected.
– Ending Skinny session from 119.29.182.108 (bad input)

If you are not using skinny I’d recommend not loading the module and blocking the ports for skinny on your firewall.

That IP originates in China, If you are not doing business with China then I’d suspect it is an intrusion attempt.

1 Like

Thank you, I have to google how to do that as I’m new to Linux and VOIP.

You can add

noload => chan_skinny.so

to your modules.conf to not load the module.

1 Like

Hi,

I added “noload => chan_skinny.so” and others as you told me to but I am still receiving same skinny packets.

Modules.conf

; Don't load skinny (tcp port 2000)
noload => chan_skinny.so
; Don't load MGCP (udp port 2727)
noload => chan_mgcp.so
; Don't load dundi (udp port 4520)
noload => pbx_dundi.so
; Don't load unistim (udp port 5000)
noload => chan_unistim.so
; Don't load ooh323 (tcp port 1720)
noload => chan_ooh323.so
; Don't load IAX2 (udp port 4569)
noload => chan_iax2.so
; Don't load SQLite because of crashes with heavy call volumes
; SQLite (version 2) is NOT needed for Asterisk
;noload => cdr_sqlite.so
noload => res_config_sqlite.so

noload’ing the chan_skinny.so module should make sure that you don’t load the module and Asterisk doesn’t act on any network traffic on any of skinny’s network ports. It doesn’t mean that nothing will try to connect to the ports still. Perhaps you have a piece of equipment, or something that’s trying to use those ports still on your network.

Best of luck

Matt

Okay, I’m sure all the IP phones are configured for SIP and no other equipment should use skinny. Should I block those ports as the IP from which I receive are not of my network?

If it’s an unfamiliar IP, definitely! When setting up an Asterisk system on a public IP address, following good security best practices (such as IP/port firewalling of unused ports/ranges) is always a must.

Matt

1 Like

Thank you, I’ll do that.
I’m new to Linux and VOIP, so implementing things as I learn.