Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

связь сокета с интерфейсом

361
16 февраля 2007 года
Odissey_
661 / / 19.09.2006
Имеется:
Одна сетевая карточка.
Псевдонимы на нее: "eth0", "eth0:1", "eth0:2".
Сокет (клиент), подключающийся к устройству с определенным IP на определенный порт. [си], [ASPLinux 9].

Связь сокета с интерфейсом осуществляется следующим образом:

 
Код:
sprintf ( ifr.ifr_name, "eth0:1", intf );
if ( setsockopt ( fd, SOL_SOCKET, SO_BINDTODEVICE, (void *)&ifr, sizeof (ifr)) <0 )
 {
    perror ( "SO_BINDTODEVICE" );
    close ( fd );
    return ( MAGENT_BIND_DEVICE_ERROR );
 }


Получаю: No such device.
Ума не приложу, в чем может быть загвоздка...
Может есть другой способ связать клиентский сокет с определенным интерфейсом?
Через структуру sockaddr_ll я так понимаю неполучится, т.к. нет привязки к ip получателя. Или есть вариант?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог