can i negate addresses?

My servers have a network 10.88.0.0/24 which is not routable outside of the host (it’s a pseudo localhost with veths, used for containers which will never need syncthing support)

Can I still have it serving on 0.0.0.0, So i don’t have to hardcode ips, but not announce those IPs?

It’s not entirely clear to me what your question is. If syncthing listens on a wildcard/unspecified address, syncthing’s announce logic will query all network interfaces for their assigned IP addresses and announce those to discovery.

This may result in announcing addresses that are not reachable for certain - or even all - other devices. This is normal and typically not a huge deal, as syncthing devices will just ignore the unreachable addresses and use another address instead.

I don’t think you can “filter” the announced addresses much. You can set announceLANAddresses to false to not announce any RFC1918 address to global discovery (has no effect on local discovery). Otherwise, there’s not much I can recall.

thanks.

Yeah I do want LAN, as that is the only addresses I use.

it’s weird because every host have that same IP addressed to themselves. So i do not know if this will cause unecessary noise.

For example:

id: abcdef-12345, have ip 10.0.0.100 and 10.88.0.1(for containers, not routed to the LAN gateway)

id: xzyab-54321, have ip 10.0.0.123, and 10.88.0.1(again, internal only).

now both are advertising they have 10.88.0.1 which does have a syncthing listening, just not the right one… I guess it should be fine.

I will probably configure each node with the LAN address only for listen. Should I use:

  • tcp://10.0.0.100:22000, quic://10.0.0.100:22000 or
  • tcp://10.0.0.100:22000, quic://10.0.0.100:22000,dynamic to still have local discovery?

in the end i’m seeing it doesn’t matter it announces those IP. as soon as the good one connects it stops probing anyway. Will see when i’m on another network how chatty it gets

1 Like