Есть компьютер, на котором запущен мой сервер. Этот компьютер через свитч подключен к другим устройствам в сети. Эти другие устройства зачастую распаковываются из коробки и имеют некий статический ip адрес от производителя( DHCP – disabled by default ).
Получается, что мой компьютер имеет например ip 192.168.1.xx и маску 255.255.255.0. Default gateway не установлен.
А другое устройство имеет ip скажем 192.168.2.xx и маску 255.255.255.0.
Очень хочется сделать HTTP запрос к этому устройству. Собственно этот HTTP запрос и нужен для смены адреса устройства.
Конечно я понимаю что в соответствии с правилами маршрутизации это не возможно. Сначала нужно поменять или свой адрес или адрес устройства.
Но все же очень хочется. Т.е. может быть программно добавить еще один ip адрес в систему или типа того. Должно работать как под винду так и под линух.
Принимаются любые сумасшедшие идеи. Спасибо.
WM>Ты не поверишь. Нужно просто сделать именно это.
а как это сделать софтверно?
Мне просто направление нужно... без деталей..
Здравствуйте, SergeyBi, Вы писали:
SB>а как это сделать софтверно?
SB>Мне просто направление нужно... без деталей..
В Windows iphlpapi.dll функция AddIPAddress.
Здравствуйте, SergeyBi, Вы писали:
WM>>Ты не поверишь. Нужно просто сделать именно это.
SB>а как это сделать софтверно?
В Linux это делается через интерфейс rtnetlink посылкой сообщения RTM_NEWADDR. Над этим делом есть обёртка libnetlink.
Но гораздо удобнее делегировать эту задачу пакету iproute2. В этом случае всё упрощается до вызова одной команды вида
ip address add 192.168.2.1/24 dev eth0
В Windows это делается аналогично, только параметры идут чуть в другом порядке и вызывать нужно netsh:
netsh in ip add address "Local Area Connection" 192.168.2.1 255.255.255.0