A method of translating an application-layer message from a first wireless application protocol to a second wireless application protocol, the method comprising: receiving an application-layer message at a gateway via a mesh network interface, the application-layer message comprising a source address and a destination address; forwarding the received application-layer message over an external network to a translation service that performs: mapping the source address to an Internet Protocol Version 6, IPv6, source address; mapping the destination address to an IPv6 destination address; receiving a translated application-layer message from the translation service, the translated application-layer message including the IPv6 source address and the IPv6 destination address; transmitting the translated application-layer message over the mesh network interface using a network stack, the network stack comprising: a transport layer configured to transport the application-layer message using User Datagram Protocol, UDP; a network layer configured to communicate the application-layer message using IPv6; a data link layer configured to encode the application-layer message for transmission, the data link layer comprising a 6LoWPAN adaptation layer and a Media Access Control, MAC, layer; and a physical layer configured to transmit the encoded application-layer message over the mesh network interface. receiving an application-layer message at a gateway via a mesh network interface, the application-layer message comprising a source address and a destination address; forwarding the received application-layer message over an external network to a translation service that performs: mapping the source address to an Internet Protocol Version 6, IPv6, source address; mapping the destination address to an IPv6 destination address; mapping the source address to an Internet Protocol Version 6, IPv6, source address; mapping the destination address to an IPv6 destination address; receiving a translated application-layer message from the translation service, the translated application-layer message including the IPv6 source address and the IPv6 destination address; transmitting the translated application-layer message over the mesh network interface using a network stack, the network stack comprising: a transport layer configured to transport the application-layer message using User Datagram Protocol, UDP; a network layer configured to communicate the application-layer message using IPv6; a data link layer configured to encode the application-layer message for transmission, the data link layer comprising a 6LoWPAN adaptation layer and a Media Access Control, MAC, layer; and a physical layer configured to transmit the encoded application-layer message over the mesh network interface. a transport layer configured to transport the application-layer message using User Datagram Protocol, UDP; a network layer configured to communicate the application-layer message using IPv6; a data link layer configured to encode the application-layer message for transmission, the data link layer comprising a 6LoWPAN adaptation layer and a Media Access Control, MAC, layer; and a physical layer configured to transmit the encoded application-layer message over the mesh network interface.