struct ifreq ifr;

 // 绑定在eth0上
memset( &ifr, , sizeof( struct ifreq ) );
snprintf( ifr.ifr_name, sizeof( ifr.ifr_name ), "%s", ifname );
if ( setsockopt( fd, SOL_SOCKET, SO_BINDTODEVICE, ( const void* )&ifr, sizeof( struct ifreq ) ) == - )
{
perror( "setsockopt[SO_BINDTODEVICE]" );
goto err_exit;
}
05-25 17:33