diff --git a/lib/sequin/sinks/nats/connection_cache.ex b/lib/sequin/sinks/nats/connection_cache.ex index d4f81f3db..93befb0c0 100644 --- a/lib/sequin/sinks/nats/connection_cache.ex +++ b/lib/sequin/sinks/nats/connection_cache.ex @@ -158,9 +158,14 @@ defmodule Sequin.Sinks.Nats.ConnectionCache do |> put_opt_key(:jwt, sink.jwt) |> put_opt_key(:nkey_seed, sink.nkey_seed) |> put_tls(sink.tls) + |> put_ipv6(sink) |> Gnat.start_link() end + defp put_ipv6(opts, %NatsSink{} = sink) do + if NatsSink.ipv6?(sink), do: Map.put(opts, :tcp_opts, [:inet6, :binary]), else: opts + end + defp put_tls(opts, true) do opts |> Map.put(:tls, true)