zoukankan      html  css  js  c++  java
  • pppd 强制设置默认网关?

    int sifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway)
    {
        
    struct rtentry rt;
            
    /*  if (defaultroute_exists(&rt) && strcmp(rt.rt_dev, ifname) != 0) {
            u_int32_t old_gateway = SIN_ADDR(rt.rt_gateway);

            if (old_gateway != gateway)
                error("not replacing existing default route to %s [%I]",
                      rt.rt_dev, old_gateway);

            return 0;
        }
    */
        memset (
    &rt, '\0'sizeof (rt));
        SET_SA_FAMILY (rt.rt_dst,     AF_INET);
        SET_SA_FAMILY (rt.rt_gateway, AF_INET);

        rt.rt_dev 
    = ifname;

        
    if (kernel_version > KVERSION(2,1,0)) {
            SET_SA_FAMILY (rt.rt_genmask, AF_INET);
            SIN_ADDR(rt.rt_genmask) 
    = 0L;
        }

        SIN_ADDR(rt.rt_gateway) 
    = gateway;

        rt.rt_flags 
    = RTF_UP | RTF_GATEWAY;
        
    if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) {
            
    if ( ! ok_error ( errno ))
                error(
    "default route ioctl(SIOCADDRT): %m");
            
            
    return 0;
        }

        default_route_gateway 
    = gateway;
        
    return 1;
    }
  • 相关阅读:
    关于ListView的注意点
    推荐一波 瀑布流的RecylceView
    RecycleView的简单应用
    Java Junit单元测试
    Java 2 个 List 集合数据求并、补集操作
    Java @Validated 遇到的大坑
    Java中的Validated验证
    使用一条sql语句查询多表的总数
    Java thymeleaf模板获取资源文件的内容
    Java热启动
  • 原文地址:https://www.cnblogs.com/iwasmu/p/1965309.html
Copyright © 2011-2022 走看看