Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Sep 2020 13:58:41 +0700
From:      Eugene Grosbein <eugen@grosbein.net>
To:        Grzegorz Junka <list1@gjunka.com>, freebsd-net@freebsd.org
Subject:   Re: sshd on two fibs
Message-ID:  <4d78a442-147f-db32-72ae-487d3e0197cc@grosbein.net>
In-Reply-To: <48e3aa5d-3123-45f2-5c46-6851ad90110a@gjunka.com>
References:  <48e3aa5d-3123-45f2-5c46-6851ad90110a@gjunka.com>

next in thread | previous in thread | raw e-mail | index | archive | help
21.09.2020 6:20, Grzegorz Junka wrote:

> I have two WANs and a server with two interfaces, each interface reaching different WAN. The server is configured with two routing tables, fib0 and fib1, one per the corresponding interface.
> 
> I would like sshd to listen on both interfaces but on different fibs, so that returning packets are sent to the proper gateway. Can I do it with one sshd? Do I need to run two separate sshd's? Can I run two separate sshd's on the same box?

sshd listens for all IPs by default. Also, sshd runs over TCP and this guarantees that it responds
from same IP address which was used by initial client's request, too. You need not worry about that.

Also, you already have static link between source IP address of sshd response,
corresponding WAN interface and gateway IP address of that WAN interface.

All you need is telling kernel to use right gateway based on source IP address despite of default route,
this is called policy-based routing and you can achieve that with single ipfw rule:

ipfw add 2000 fwd $gateway2 ip from $wan2ip to any out xmit $wan1

That is: redirect IP packets with source of second WAN interface ($wan2ip) to right gateway of that WAN ($gateway2)
if they are going using (wrong) route to WAN1. That's all.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4d78a442-147f-db32-72ae-487d3e0197cc>