首页 > 编程知识 正文

linux怎么编译c语言,linux设置eth0网关

时间:2023-05-03 05:17:28 阅读:133408 作者:2043

# include # include # include # include # include # include #

{

Int软盘;

int rc;

结构ifreq IFR;

struct sockaddr_in *sin;

结构延迟rt;

FD=SOCKet(af_inet,sock迷你硬币,0 );

是if(FD0 )

{

perror (套接字错误);

}

短信(IFR,0,sizeof ) IFR );

strcpy(IFR.IFR_name,ifname );

//ipaddr

(if(inet_aton(IPaddr,(sin-sin_addr ) )0) ) ) ) ) ) 652

{

perror(inet_atonerror );

}

if(ioctl(FD,SIOCSIFADDR,ifr )0) )。

{

perror(ioctlsiocsifaddrerror );

}

//net掩码

(if(inet_Aton(mask,(sin-sin_addr ) (0) ) ) ) ) ) ) )。

{

perror(inet_ptonerror );

}

if (ioctl (软盘,SIOCSIFNETMASK,ifr )0) ) )。

{

perror(ioctl );

}

//网关

memset(rt,0,sizeof ) structrtentry );

短信(sin,0,sizeof ) structsockaddr_in );

if (inet _ aton (网关,sin-sin_addr )0) ) ) ) ) )。

{

printf(inet_atonerror(n );

}

memcpy(rt.rt_gateway,sin,sizeof ) structsockaddr_in );

(struct sockaddr_in * ) rt.rt_dst )-sin_family=AF_INET;

(struct sockaddr_in * ) rt.rt_genmask )-sin_family=AF_INET;

rt.rt_flags=RTF_GATEWAY;

if(ioctl(FD,SIOCADDRT,rt )0) ) )。

{

zerror(ioctl ) siocaddrt error inset _ default _ route (n );

关闭(软盘);

}

关闭(软盘);

返回RC;

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。