Re[3]: Маршрутизация
От: watch-maker  
Дата: 19.04.12 08:39
Оценка: 6 (1)
Здравствуйте, 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
Re: Маршрутизация
От: watch-maker  
Дата: 18.04.12 21:02
Оценка: 3 (1)
Здравствуйте, SergeyBi, Вы писали:

SB>Т.е. может быть программно добавить еще один ip адрес в систему или типа того. Должно работать как под винду так и под линух.

Ты не поверишь. Нужно просто сделать именно это. Сетевой интерфейс, конечно, может иметь сколько угодно ip адресов что под Windows, что под Linux. Иногда это называют multihoming по схеме single link — multiple ip.

SB>Принимаются любые сумасшедшие идеи.

Ну можно ещё открыть RAW-сокет и послать в сеть вообще всё что захочешь. Но по сравнению с предыдущим сценарием этот способ выглядит значительно хуже.
Маршрутизация
От: SergeyBi  
Дата: 18.04.12 20:37
Оценка:
Есть компьютер, на котором запущен мой сервер. Этот компьютер через свитч подключен к другим устройствам в сети. Эти другие устройства зачастую распаковываются из коробки и имеют некий статический 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 адрес в систему или типа того. Должно работать как под винду так и под линух.

Принимаются любые сумасшедшие идеи. Спасибо.
Re[2]: Маршрутизация
От: SergeyBi  
Дата: 18.04.12 21:05
Оценка:
WM>Ты не поверишь. Нужно просто сделать именно это.

а как это сделать софтверно?

Мне просто направление нужно... без деталей..
Re[3]: Маршрутизация
От: mansur https://netmontools.com
Дата: 19.04.12 04:42
Оценка:
Здравствуйте, SergeyBi, Вы писали:

SB>а как это сделать софтверно?


SB>Мне просто направление нужно... без деталей..


В Windows iphlpapi.dll функция AddIPAddress.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.