Допустим, у меня на компьютере включен Wi-Fi, локальная сеть Ethernet и Hamachi.
Они все связаны.
Мои приложения отправляют данные через них.
Терминологический вопрос: мои приложения отправляют данные на эти сетевые адаптеры, контроллеры сетевого интерфейса или сетевые интерфейсы. То есть эти 3 технологии создают сетевые адаптеры (NIC) для моих приложений для связи с сетью? Какой правильный термин (сетевой адаптер, сетевой интерфейс, сетевая карта)?
Каждый из этих сетевых адаптеров (?) назначается IP-адрес (один или несколько).
Как мое приложение узнает, в какой адаптер отправлять данные? Существует ли адаптер по умолчанию, выбранный ОС, но приложение может выбрать адаптер дополнительно. Я думаю, что в Java (и других языках программирования), когда вы создаете сокет, вы можете указать локальный IP-адрес, и это должен быть один из назначенных addapters?
Это также означает, что отправленные данные будут использовать соответствующий IP-адрес источника в пакете IP в зависимости от используемого адаптера.