Na linuxu se dají používat pravidla (ip rule) pro výběr routovací tabulky. Pokud dokážete sestavit pravidla, která budou schopna rozlišit komunikaci pro to jedno rozhraní, můžete použít to. Nenapsal jste, čím bude ta komunikace na tom jednom rozhraní specifická – zda třeba dokážete určit zdrojovou IP adresu, proces apod.
Bingo, to by mohlo být ono.
Pravidlo je možná takto: Vše co jde ze systému na cílovou adresu 192.168.0.0/16 a má cílový tcp port 9999 nebo je to icmp ping do tohoto rozsahu (+ možná ještě udp broadcast na 192.168.0.0/16), tak má jít přes wlan1, jinak dle výchozích rout případně na bránu. K tomu bych tedy asi navíc potřeboval, aby dhcp klient nenastavoval výchozí bránu pro wlan1. Při použití ip rule si musím pakety značkovat ve firewallu a tu značku pak použít v ip rule pravidlech nebo pravidla na port, proces atd. umí ip rule přímo?
Je ovšem otázka, zda se ta pravidla do budoucna nezkomplikují (a ony se určitě zkomplikují, jak se bude přidávat podpora pro další IOT zařízení). Pak by bylo možná lepší volit nějaký obecnější filtr. Pokud by se na danou komunikaci vyhradil například separátní proces, mohlo by se vše z toho procesu směřovat na wlan1 - což by se pak asi podobalo té mnou zmíněné virtualizaci, tj. proces by na tcp/ip úrovni komunikoval pouze a jen prostřednictvím wlan1. S procesem by se muselo nějak komunikovat, nejlépe mechanismem nezávislým na tcp/ip, takže třeba RMI over Unix Sockets -
junixsocket (ty procesy jsou java)?
PS: V praxi jde o úkol zapojit IOT zařízení do zásuvky, připojit se na něj wlan1 wifinou (IOT funguje při prvním zapnutí jako AP) a nakonfigurovat ho pro připojení na wlan0 našeho systému, které je v AP režimu a kde běží dhcp server. Tím pádem se zařízení přepne do wifi client režimu a přeadresuje dle našeho dhcp. Dhcp je pod kontrolou a tím pádem bude pod kontrolou i zařízení a půjde ze systému přes tcp/ip dále ovládat. Těch zařízení tam bude samosebou více a tímto mechanismem si je postupně „přivlastním“.