I don't know if the allowed port range for NodePort services is configurable to allow lower TCP/UDP ports and I also do not know if OSE enforces the configured range. I suppose OSE cannot let a pod request any port because it could conflict with ports used by OSE node services like kubelet and the SDN. Another issue is that a NodePort service can conflict with other NodePort services.
This doesn't exactly answer your question, it is just so you know NodePort restrictions make sense. In a cloud environment you give up some fine-grained control that you'd have with bare metal servers or traditional virtual machines in exchange for easier deploying and management. If an application is not flexible enough to run with configuration changes it may not be possible to run it under OSE and other cloud platforms.
Isn't it possible to configure your application to use a different UDP port? I guess no, SIP is not very flexible. :-(
If that is the case, maybe you can run something outside OSE, for example at a firewall box, to redirect packets from port 5060 in it to whatever port you configure in your NodePort service. If you can guarantee using UDP port 5060 on your OSE nodes is safe you also have the option of configuring iptables rules to redirect packets.
s, Fernando Lozano