Controlling arduino outside of the same network?

  1. Sign public ip to arduino tcp/ip shield. direct connect. ( make sure turn firewall at tcp/ip shield)
  2. Put arduino tcp/ip shield into DMZ zone of firewall.
  3. Set port forwarding at firewall, forwarding port number.
  4. Set VPN client at arduino tcp/ip shield.
  5. Set Reverse SSH Tunneling at arduino tcp/ip shield.
    I am sure there are a lot of other way you could do NAT to NAT connect, but I list only common one here.

You might need dynamic DNS setup, if your ISP do not give you static one.