Re: [Ekiga-list] Account is no locked anymore. What to do?
- From: junk_no_spam <junk_no_spam verizon net>
- To: Ekiga mailing list <ekiga-list gnome org>
- Subject: Re: [Ekiga-list] Account is no locked anymore. What to do?
- Date: Sat, 17 Aug 2013 15:31:50 -0500
On 08/17/2013 02:15 PM, Csanyi Pal wrote:
./voip_ck: line 141: _nc_app: unbound variable
Result caused by removal of app check code.
New and improved script at end of reply.
When I hash with '#' character this line
pkill -u $USER -f $_nc_app > /dev/null 2>&1
then I can run the script with the following output:
./voip_ck 2>voip_ck.log
Testing PC firewall (LAN) the Router (WAN) ports
Testing LAN 127.0.1.1 ports
Hmmm, guessing that will not test pc firewall by its self. :(
Testing WAN 95.85.141.89 ports
STUN UDP 3478 passed
STUN UDP 3479 passed
SIP UDP 5060 passed
SIP UDP 5000 passed
SIP UDP 5100 passed
RTP UDP 7070 passed
RTP UDP 16382 passed
old H323 H.245 TCP 30000 passed
old H323 H.245 TCP 30010 passed
H.323 TCP 1720 passed
Ok now we know firewall and router are working; :-)
Testing sip servers by ip then by name
ping -c1 -w 2 69.71.222.197 passed
ping -c1 -w 2 46.19.58.41 passed
ping -c1 -w 2 sip2.diamondcard.us. passed
ping -c1 -w 2 sip.diamondcard.us. passed
At this point, we know your ip is not blacklisted at Diamond.
Hope the ping test did not get you blacklisted. :(
Still can't call neither Ekiga echo test, nor Diamond echo test. Why?
At this point, I have to say it is an account setup problem.
I know I had to remove my Ekiga account, so a diamond call would get
through.
New and improved script follows:
#!/bin/bash
#***********************************************************************
#*
#* voip_ck - check voip ports version 1.1
#*
#* Verify ports used by ekiga are open on pc and accessable
#* through pc firewall and modem.
#*
#* Uses nc from netcat-openbsd rpm to test port connections
#* wget from wget rpm, and
#* dig from bind-utils rpm to check sip.diamondcard.us servers.
#*
#* Required /etc/shorewall/rules snippet follows:
#*
#* If behind NAT router, read
#* http://wiki.ekiga.org/index.php/Ekiga_behind_a_NAT_router
#*
#* # ekiga UDP Through NAT (STUN) ports
#* ACCEPT $FW net udp 3478:3479
#* ACCEPT net $FW udp 3478:3479
#*
#* # ekiga incomming SIP VoIP, Windows Messenger ports
#* ACCEPT $FW net udp 5000:5100
#* ACCEPT net $FW udp 5000:5100
#*
#* # ekiga incomming H.323, Netmeeting ports
#* ACCEPT net $FW tcp 1720
#* ACCEPT $FW net tcp 1720
#*
#***********************************************************************
set -u
_exe=$0
_app=$(basename $_exe)
_dport=0
_errors=("")
_fault_flg=0
_fault_msg="pc firewall and/or tcpwrappers blocking"
_ipv_mode="-4"
_lan_ip=$(/bin/hostname --ip-address)
_msg=""
_nc_bin="nc"
_pkt_sw=""
_pkt="-u"
_registar="sip.diamondcard.us"
_rpm=""
_servers=""
_servers_ip=""
_sport=38564
_svr_fn=/local/tmp/$_app.log
_target="$_lan_ip"
_test=""
_test_msg="LAN"
_wan_ip=$(wget -qO - http://myip.dnsomatic.com/)
port_ary=(
"3478 UDP STUN"
"3479 UDP STUN"
"5060 UDP SIP"
"5000 UDP SIP"
"5100 UDP SIP"
"7070 UDP RTP"
"16382 UDP RTP"
"30000 TCP old H323 H.245 "
"30010 TCP old H323 H.245 "
"1720 TCP H.323"
)
#**********************************
#* Verify needed apps are installed
#**********************************
_apps="nc wget dig"
for _app in $_apps ; do
set -- $(type $_app)
if [ "$2" != "is" ] ; then
_errors+=("$@")
(( _fault_flg++ ))
fi
done
set -- $(type rpm)
if [ "$2" = "is" ] ; then
_app=nc
set -- $(type $_app)
_bin=$3
if [ $? -eq 0 ] ; then
_nc_app=$_bin
_rpm=$(rpm -qf $_bin )
_tmp=${_rpm:0:14}
if [ "$_tmp" != "netcat-openbsd" ] ; then
_errors+=("$_bin needs to be the netcat-openbsd version")
(( _fault_flg++ ))
fi
fi
fi
if [ $_fault_flg -gt 0 ] ; then
echo "
$_exe fatal _error:"
for ix in ${!_errors[*]} ; do
printf " %s\n" "${_errors[$ix]}"
done
echo "Please install any missing application "
exit 1
fi
set -- $(type nc)
_nc_app=$_bin
#**************************************************
#* check pc firewall (LAN) then WAN router ports
#**************************************************
/bin/echo "
Testing PC firewall (LAN) the Router (WAN) ports
"
_fault_flg=0
pkill -u $USER -f $_nc_app > /dev/null 2>&1
for _test_msg in LAN WAN ; do
/bin/echo "Testing $_test_msg $_target ports"
i=0
while [ $i -ne ${#port_ary[ ]} ] ; do
set -- $(/bin/echo ${port_ary[$i]})
_dport=$1
_pkt=$2
shift 2
_test="$@"
if [ "$_pkt" = "UDP" ] ; then
_pkt_sw="-u"
else
_pkt_sw=""
fi
_test_args="$_ipv_mode -s $_sport $_pkt_sw -w 2 $_target"
/bin/echo -n "$_test $_pkt $_dport "
_msg="$_test_msg $_test_msg port ${port_ary[$i]}"
$_nc_bin $_ipv_mode -l $_pkt_sw $_dport > $_svr_fn &
/bin/echo "$_msg" |$_nc_bin $_test_args $_dport
_count=$(/bin/grep -c "$_msg" $_svr_fn)
if [ $_count -eq 0 ] ; then
/bin/echo " FAILED"
(( _fault_flg++ ))
/bin/echo " "
/bin/echo "Sent: $_msg "
/bin/echo -n "Received: $_msg "
/bin/cat $_svr_fn
netstat | grep $_dport
/bin/echo "$_test_msg $_pkt port ${port_ary[$i]} is not open"
if [ "$_test_msg" = "LAN" ] ; then
/bin/echo "$_fault_msg port $_dport"
/bin/echo "Open port $_dport in ${_target}'s firewall"
/bin/echo "Allow port $_dport in ${_target}'s
/etc/hosts.allow or"
/bin/echo "Remove port $_dport in ${_target}'s /etc/hosts.deny"
/bin/echo " "
else
/bin/echo "$_test_msg $_pkt port ${port_ary[$i]} is not open"
/bin/echo "Open/forward port $_dport to $_target in the router"
/bin/echo " "
fi
else
/bin/echo " passed"
fi
(( i++ ))
done
/bin/echo "
"
_fault_msg="Router's firewall blocking"
_target="$_wan_ip"
done
pkill -u $USER -f $_nc_bin > /dev/null 2>&1
if [ $_fault_flg -gt 0 ] ; then
echo "
Clear the above errors to finish $_exe testing"
exit 1
fi
#*************************************************
#* get registar's sip udp server and ip address
#*************************************************
while read -r line; do
set -- $line
_servers="$_servers $4"
set -- $(host $4)
_servers_ip="$_servers_ip $4"
done < <((dig +short _sip._udp.$_registar SRV))
#*********************************************
#* ping by ip then by name
#*********************************************
echo "
Testing sip servers by ip then by name
"
_fault_flg=0
for _serv in $_servers_ip $_servers ; do
_cmd="ping -c1 -w 2 $_serv"
/bin/echo -n "$_cmd"
$_cmd > /dev/null 2>&1
if [ $? -ne 0 ] ; then
/bin/echo " FAILED"
(( _fault_flg++ ))
else
/bin/echo " passed"
fi
done
if [ $_fault_flg -ne 0 ] ; then
echo "If one sip server FAILED and the other passed, then I
am betting your ip ($_wan_ip) has been black listed.
You will need to contact diamond to clear it from their blacklist.
Repeted ping can also get you blacklisted. :(
"
fi
/bin/rm $_svr_fn
#****************** end voip_ck
*********************************************
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]