Я создал 3 виртуальных интерфейса в системе Linux, используя другой IP-адрес.
У меня есть программное обеспечение, выполняющее запросы к серверу, но оно использует интерфейс по умолчанию, eth0
.
Можно ли временно запустить программное обеспечение, используя другой IP-адрес / интерфейс, например eth0:1
?
Что-то вроде :
USE_INTERFACE=eth0:1 node test.js
Обычно это зависит от программного обеспечения, которое оно поддерживает. Обычно это реализуется путем привязки сокета к IP-адресу интерфейса, который вы хотите использовать. Посмотрите в документации способ привязки к локальному IP-адресу.
Если программное обеспечение не поддерживает то, что у вас есть доступ к источнику, вы можете добавить или изменить bind()
вызовите после создания сокета, поэтому выполните привязку к нужному интерфейсу.
Также возможно скрыть нежелательные интерфейсы с функциями групп управления, если ваше ядро поддерживает это.
Вы можете отменить, не касаясь программного обеспечения, благодаря LD_PRELOAD.
Я нашел это :
Затем скомпилируйте его:
$ BIND_ADDR="virtual_interface_ip" LD_PRELOAD=./bind.so ssh root@myserver.com
И он будет использовать виртуальный интерфейс ip!
Затем, если вам нужно иметь несколько адресов Mac на одной сетевой карте, вы можете использовать multimac:
Удачного взлома!
Хорошо, это проще, используя ту же стратегию, чем система виртуализации. Используя режим моста, brctl, вот руководство: