mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-02 11:06:31 +00:00
sip_nat_settings: Update script for latest Linux.
With the latest Linux, 'ifconfig' is not installed on default anymore. Furthermore, the output of the current net-tools 'ifconfig' changed. Therefore, parsing failed. This update uses 'ip addr show' instead. Finally, the service for the external IP changed. Change-Id: I9b1a7c3f457e3553b50a3e9a55524e40d70245a0
This commit is contained in:
committed by
Kevin Harwell
parent
8907a9f0b9
commit
f225e9bf35
@@ -31,16 +31,8 @@
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
WGET=`which wget`
|
||||
FETCH=`which fetch`
|
||||
if [ -x ${WGET} ]; then
|
||||
externip=`${WGET} -q -O- http://www.whatismyip.org`
|
||||
elif [ -x ${FETCH} ]; then
|
||||
externip=`${FETCH} -q -o - http://www.whatismyip.org`
|
||||
else
|
||||
echo "no binary found to contact http://www.whatismyip.org"
|
||||
exit 1
|
||||
fi
|
||||
# see http://unix.stackexchange.com/q/22615
|
||||
externip=`dig @resolver1.opendns.com -4 myip.opendns.com A +short`
|
||||
|
||||
# optional parameter: network interface to use. By default: none.
|
||||
IFACE="$1"
|
||||
@@ -49,8 +41,11 @@ OS=`uname -s`
|
||||
case "$OS" in
|
||||
Linux)
|
||||
echo "externip = $externip"
|
||||
/sbin/ifconfig $IFACE | grep 'inet addr:' | grep Bcast \
|
||||
| sed -e 's/^.*Bcast:\([0-9.]*\)\s*Mask:\([0-9.]*\)\s*$/localnet = \1\/\2/'
|
||||
if [ -x "${IFACE}" ]; then
|
||||
ip --brief -family inet address show scope global up dev $IFACE | awk '{print "localnet = " $3}'
|
||||
else
|
||||
ip --brief -family inet address show scope global up | awk '{print "localnet = " $3}'
|
||||
fi
|
||||
;;
|
||||
OpenBSD|FreeBSD)
|
||||
if [ "${OS}" = "FreeBSD" ]; then
|
||||
|
Reference in New Issue
Block a user