PJSIP Endpoints(Extensions) Not in show contacts after reg

Good day All
This is a troublesome problem.

I have asterisk-13 on the cloud. I did a brand new server today.
Use use freepbx as my administration interface.

When setup eveything works fine. then for some reason my phones stop regestering.
there are 2 ways for me to get them to work again.

  1. Create a new extension in asterisk - it will then register fine. Not a viable solution on big setups
  2. Change the internet connection its using. hmmm ill explain why this is eird later.

We are based in southafrica and internet is expensive so the cheaper intenet packages are very throttle. no good for voip. so i take a small unshapped local ony internet package for my voip lines.

I route the traffic using a microtik router.
In mangle rules i mark all traffic from the Voip Phones IP and route that MARK through the unshapped intenet. all other traffice goes through the cheap internet.

Now as i say this owrks great. bt for somereason it will stop working.
then the only way i can get it to work is the above or start redirecting the trafiic through the cheap internet.

Below is a log. you can see the phones connect but when i show contacts they are not listed.
BTW according to the phone (Yealink T21) it is registered. It can phone out, but cont receive call or call from other extensions - obvioulsy its not in the contact list so cant be routed.

To me it is as if that ip is being remembered and cant be reregistered.
I have tried rebooting servers/phone/mikrotik
Nothing works.

At the bottom of thout put below is an error i get just after restarting asterisk.
Maybe that is the problem.

Contact:  201/sip:201@41.246.90.200:40583;transport=TCP        Avail              92.576
  Contact:  202/sip:202@41.246.90.200:48018;transport=TCP        Avail             108.290
  Contact:  203/sip:203@41.246.90.200:38061;transport=TCP        Avail              92.413
  Contact:  400/sip:400@105.210.45.159:58451;transport=TCP       Avail             126.314
  Contact:  401/sip:401@105.210.45.159:5062                      Avail              58.973
  Contact:  402/sip:402@105.210.45.159:41623;transport=TCP       Avail             126.686
  Contact:  403/sip:403@105.210.45.159:34200;transport=TCP       Avail             118.163
  Contact:  800/sip:800@197.228.125.253:1024                     Avail             173.084
  Contact:  801/sip:801@197.228.125.253:1024                     Avail             189.033
  Contact:  803/sip:803@197.228.125.253:1024                     Avail             173.325

    -- Added contact 'sip:105@41.246.97.214:53740;transport=TCP' to AOR '105' with expiration of 300 seconds
    -- Added contact 'sip:502@41.246.97.214:50491;transport=TCP' to AOR '502' with expiration of 300 seconds
    -- Added contact 'sip:504@41.246.97.214:43814;transport=TCP' to AOR '504' with expiration of 300 seconds
    -- Added contact 'sip:500@41.246.97.214:41860;transport=TCP' to AOR '500' with expiration of 300 seconds
    -- Added contact 'sip:107@41.246.97.214:52769;transport=TCP' to AOR '107' with expiration of 300 seconds
    -- Added contact 'sip:300@41.246.97.135:43972;transport=TCP' to AOR '300' with expiration of 300 seconds
    -- Added contact 'sip:303@41.246.97.135:35047;transport=TCP' to AOR '303' with expiration of 300 seconds
    -- Added contact 'sip:501@41.246.97.214:55877;transport=TCP' to AOR '501' with expiration of 300 seconds
    -- Added contact 'sip:108@41.246.97.214:39561;transport=TCP' to AOR '108' with expiration of 300 seconds
    -- Added contact 'sip:100@41.246.97.214:32933;transport=TCP' to AOR '100' with expiration of 300 seconds
    -- Added contact 'sip:200@41.246.90.200:49060;transport=TCP' to AOR '200' with expiration of 300 seconds
    -- Added contact 'sip:503@41.246.97.214:44621;transport=TCP' to AOR '503' with expiration of 300 seconds
    -- Added contact 'sip:106@41.246.97.214:45597;transport=TCP' to AOR '106' with expiration of 300 seconds
    -- Added contact 'sip:802@197.228.125.253:4140;transport=TCP' to AOR '802' with expiration of 600 seconds
    -- Added contact 'sip:101@154.73.32.125:5062' to AOR '101' with expiration of 300 seconds
    -- Added contact 'sip:302@41.246.97.135:60833;transport=TCP' to AOR '302' with expiration of 300 seconds
    -- Added contact 'sip:103@41.246.97.214:60521;transport=TCP' to AOR '103' with expiration of 300 seconds
    -- Added contact 'sip:102@41.246.97.214:38159;transport=TCP' to AOR '102' with expiration of 300 seconds
    -- Added contact 'sip:105@41.246.97.214:53740;transport=TCP' to AOR '105' with expiration of 300 seconds
    -- Added contact 'sip:502@41.246.97.214:50491;transport=TCP' to AOR '502' with expiration of 300 seconds
    -- Added contact 'sip:504@41.246.97.214:43814;transport=TCP' to AOR '504' with expiration of 300 seconds
    -- Added contact 'sip:500@41.246.97.214:41860;transport=TCP' to AOR '500' with expiration of 300 seconds
    -- Added contact 'sip:107@41.246.97.214:52769;transport=TCP' to AOR '107' with expiration of 300 seconds
    -- Added contact 'sip:300@41.246.97.135:43972;transport=TCP' to AOR '300' with expiration of 300 seconds
    -- Added contact 'sip:303@41.246.97.135:35047;transport=TCP' to AOR '303' with expiration of 300 seconds
    -- Added contact 'sip:501@41.246.97.214:55877;transport=TCP' to AOR '501' with expiration of 300 seconds
    -- Added contact 'sip:108@41.246.97.214:39561;transport=TCP' to AOR '108' with expiration of 300 seconds
    -- Added contact 'sip:100@41.246.97.214:32933;transport=TCP' to AOR '100' with expiration of 300 seconds
    -- Added contact 'sip:200@41.246.90.200:49060;transport=TCP' to AOR '200' with expiration of 300 seconds
    -- Added contact 'sip:503@41.246.97.214:44621;transport=TCP' to AOR '503' with expiration of 300 seconds
    -- Added contact 'sip:106@41.246.97.214:45597;transport=TCP' to AOR '106' with expiration of 300 seconds
    -- Added contact 'sip:101@154.73.32.125:5062' to AOR '101' with expiration of 300 seconds
    -- Added contact 'sip:302@41.246.97.135:60833;transport=TCP' to AOR '302' with expiration of 300 seconds
    -- Added contact 'sip:103@41.246.97.214:60521;transport=TCP' to AOR '103' with expiration of 300 seconds
    -- Added contact 'sip:102@41.246.97.214:38159;transport=TCP' to AOR '102' with expiration of 300 seconds
    -- Added contact 'sip:105@41.246.97.214:53740;transport=TCP' to AOR '105' with expiration of 300 seconds
    -- Added contact 'sip:502@41.246.97.214:50491;transport=TCP' to AOR '502' with expiration of 300 seconds
    -- Added contact 'sip:504@41.246.97.214:43814;transport=TCP' to AOR '504' with expiration of 300 seconds
    -- Added contact 'sip:500@41.246.97.214:41860;transport=TCP' to AOR '500' with expiration of 300 seconds
    -- Added contact 'sip:107@41.246.97.214:52769;transport=TCP' to AOR '107' with expiration of 300 seconds
    -- Added contact 'sip:501@41.246.97.214:55877;transport=TCP' to AOR '501' with expiration of 300 seconds
    -- Added contact 'sip:303@41.246.97.135:35047;transport=TCP' to AOR '303' with expiration of 300 seconds
    -- Added contact 'sip:300@41.246.97.135:43972;transport=TCP' to AOR '300' with expiration of 300 seconds
    -- Added contact 'sip:108@41.246.97.214:39561;transport=TCP' to AOR '108' with expiration of 300 seconds
ubuntu1404*CLI> pjsip show contacts

  Contact:  <Aor/ContactUri...................................>  <Status....>  <RTT(ms)..>
 =========================================================================================

  Contact:  201/sip:201@41.246.90.200:40583;transport=TCP        Avail              96.041
  Contact:  202/sip:202@41.246.90.200:48018;transport=TCP        Avail             112.499
  Contact:  203/sip:203@41.246.90.200:38061;transport=TCP        Avail              86.979
  Contact:  400/sip:400@105.210.45.159:58451;transport=TCP       Avail             112.817
  Contact:  401/sip:401@105.210.45.159:5062                      Avail              55.336
  Contact:  402/sip:402@105.210.45.159:41623;transport=TCP       Avail             120.164
  Contact:  403/sip:403@105.210.45.159:34200;transport=TCP       Avail             129.982
  Contact:  800/sip:800@197.228.125.253:1024                     Avail             245.871
  Contact:  801/sip:801@197.228.125.253:1024                     Avail             142.078
  Contact:  803/sip:803@197.228.125.253:1024                     Avail             246.101





[2015-03-26 05:49:26] ERROR[2554]: pjsip:0 <?>:         tcpc0x7f213c01 TCP connect() error: Connection refused [code=120111]
[2015-03-26 05:49:26] WARNING[2554]: pjsip:0 <?>:       tsx0x7f213c01f Failed to send Request msg OPTIONS/cseq=8955 (tdta0x7f213c0195c0)! err=120111 (Connection refused)
[2015-03-26 05:49:32] ERROR[2554]: pjsip:0 <?>:         tcpc0x7f213c02 TCP connect() error: Connection refused [code=120111]
[2015-03-26 05:49:32] WARNING[2554]: pjsip:0 <?>:       tsx0x7f213c01f Failed to send Request msg OPTIONS/cseq=50499 (tdta0x7f213c02a220)! err=120111 (Connection refused)
[2015-03-26 05:49:59] ERROR[2554]: pjsip:0 <?>:         tcpc0x7f213c05 TCP connect() error: Connection refused [code=120111]
[2015-03-26 05:49:59] WARNING[2554]: pjsip:0 <?>:       tsx0x7f213c01f Failed to send Request msg OPTIONS/cseq=58284 (tdta0x7f213c056520)! err=120111 (Connection refused)

I have read somewhere that this might be a freepabx bug.
However doesnt freepbx just create the config files for asterisk?

Anyone have any idea where i can start looking.
Am i the only one facing this problem.