[ 
https://issues.apache.org/jira/browse/GUACAMOLE-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17930307#comment-17930307
 ] 

Nick Couchman edited comment on GUACAMOLE-2037 at 2/25/25 12:07 PM:
--------------------------------------------------------------------

This is actually not a bug, this was done intentionally a while back due to the 
fact that Tomcat only makes IPv4 connections by default, and having guacd 
listen on IPv6 only can cause issues when Tomcat cannot make IPv6 connections.

It is definitely something that should be configurable.

Also, [~pv2b], please do not submit patches to the Jira issues - if you'd like 
to contribute code toward implementing these changes, please fork the code, 
create a branch, make the changes, and then submit a pull request. Full 
contribution guidelines can be found, here: 
https://guacamole.apache.org/open-source/.


was (Author: nick.couch...@yahoo.com):
This is actually not a bug, this was done intentionally a while back due to the 
fact that Tomcat only makes IPv4 connections by default, and having guacd 
listen on IPv6 only can cause issues when Tomcat cannot make IPv6 connections.

It is definitely something that should be configurable.

> Make guacd Docker configurable for IPv6
> ---------------------------------------
>
>                 Key: GUACAMOLE-2037
>                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-2037
>             Project: Guacamole
>          Issue Type: Improvement
>          Components: guacd-docker
>    Affects Versions: 1.5.5
>         Environment: Ubuntu 24.04 LTS with Docker version 28.0.0, build 
> f9ced58, with ipv6-only docker and host networking
>            Reporter: Per von Zweigbergk
>            Priority: Minor
>         Attachments: guacd-docker-ipv6.patch
>
>   Original Estimate: 0.5h
>  Remaining Estimate: 0.5h
>
> guacd-docker is hardcoded to launch guacd, binding to 0.0.0.0, which is not 
> configurable using an environment variable.
> This breaks in case you want to use guacd in an environment with IPv6, for 
> example in the case where you're using IPv6-only container networking.
> Fortunately, the fix should just be a matter of changing the CMD in the 
> Dockerfile to listen on :: instead of 0.0.0.0. This lets guacd respond to 
> both IPv4 and IPv6 connections.
> I have attached a patch that does this.
> As a workaround, it's possible to specify a different entrypoint when 
> launching guacd, as per this docker-compose.yml snippet, but this isn't 
> really a great way of doing things, because it ends up hardcoding an 
> implementation detail into configuration.
> {{services:
>   # guacd
>   guacd:
>     container_name: guacd_compose
>     image: docker.io/guacamole/guacd
>     command: "/opt/guacamole/sbin/guacd -b :: -L info -f"
>     networks:
>       - guacnetwork_compose
>     restart: always
>     volumes:
>     - ./drive:/drive:rw
>     - ./record:/record:rw
> }}
> As an alternative, it would also be possible to expose an environment 
> variable to explicitly enable IPv6 support, but I think just changing the 
> hardcoded default should be fine, and, while this might be a case of me 
> having limited imagination, I can not think of any way it could break.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to