Quand un esclave est lancé par JNLP, l'agent de l'esclave tente de se connecter à Hudson par un port TCP spécifique, afin d'établir un canal de communication. Certains réseaux très sécurisés peuvent vous empècher d'effectuer cette connexion. Cela peut également être le cas quand Hudson tourne derrière un répartiteur de charge (load balancer), un reverse proxy apache dans une zone démilitarisée (DMZ), etc.

Cette option de tunneling vous permet, dans ces situations, de rediriger la connexion sur un autre host ou un autre numéro de port. Le champ supporte les formats "HOST:PORT", ":PORT" et "HOST:". Dans le premier format, l'agent JNLP de l'esclave se connectera sur le numéro de port TCP et le host spécifiés et supposera que vous avez configuré votre réseau de façon à ce que ce port fasse suivre la connexion sur le port TCP de l'esclave JNLP de Hudson.

Dans les deux derniers formats, le nom de host et le numéro de port par défaut (c'est-à-dire le nom de host que Hudson utilise et le numéro de port que Hudson a ouvert) sont utilisés pour compléter les valeurs manquantes. En particulier, le format HOST: est utile si un reverse proxy HTTP est utilisé et que Hudson tourne en fait sur un autre système.