Я понимаю, что если вы явно не выбираете исходный адрес с помощью bind или sendmsg, исходный адрес определяется явным указанием исходного адреса из выбранного маршрута, иначе ядро выберет первый адрес, настроенный на интерфейсе, который попадает в тот же самый сеть в качестве адреса назначения или маршрутизатора nexthop.
Что произойдет, если в игру вступит маршрутизация на основе политик, и вы захотите выбрать свой маршрут на основе IP-адреса источника? Одинаков ли алгоритм выбора исходного адреса и является ли правило политики переопределением выбранного маршрута для исходного адреса?