小玩命

小玩命

0个粉丝

2

问答

0

专栏

0

资料

小玩命  发布于  2016-03-09 20:52:30
采纳率 0%
2个问答
3004

Hi3520D IP

 
本帖最后由 小玩命 于 2016-3-9 21:06 编辑

本人想用Hi3520D的网口来传输摄像头采集到的视频信息,但是不知道如何获得板子的IP,请问各位该如何获得它的IP(想编写TCP通信,所以得知道板子的IP地址)
我来回答
回答6个
时间排序
认可量排序

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-03-09 23:17:28
认可0
呵呵,你真行,板子的IP你都不知道:lol

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-03-09 23:20:11
认可0
都已经是linux系统了,首先这个IP是你自己配置的,在etc/network/interfaces里面,通常在这里面配置。这是系统启动的值,当然,你也可以在etc/init.d/rc.local里面用ifconfig的方式设定IP的各种信息。

然后程序如果要知道具体的IP,或者修改IP,采用linux 标准网络编程,获取即可,网上一搜一大堆

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-03-10 03:23:22
认可0
IV_COM_INF_API bool        __stdcall        IVComInf_GetLocalIPAddress(char *IP);

IV_COM_INF_API bool        __stdcall        IVComInf_GetLocalIPAddress(char *IP)
{
        static char ip[16];
        sprintf(ip,"127.0.0.1");
        int sockfd=0;
        if((sockfd = socket(PF_INET, SOCK_STREAM, 0)) == -1)
                printf("socket error\n");
        struct ifreq req;
        bzero(&req, sizeof(req));
        strcpy(req.ifr_name, "eth0");
        if(ioctl(sockfd, SIOCGIFADDR, &req) == -1)
                printf("ioctl error\n");
        sockaddr_in *host =NULL;
        host=(sockaddr_in*)&req.ifr_addr;
        sprintf(ip,"%s",inet_ntoa(host->sin_addr));
        //printf("GetLocalIp %s \n",ip);
        sprintf(IP,"%s",ip);
        close(sockfd);
        return true;
}

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-03-10 03:24:57
认可0
//获取本地网络IP地址、子网掩码、网关,网络可能有多组,默认第一组
bool bGetNetInfInited=false;
#define MAX_SUPPORT_NET_INF_NUM    8
typedef struct NET_CARD_INFEx
{
        char interfaceName[32];
        char strIP[32];
        char strCast[32];
        char strMask[32];
        char strGetWay[32];
}NET_CARD_INF;
NET_CARD_INF netInterfaceInf[MAX_SUPPORT_NET_INF_NUM];
bool getAllNetInf()
{
        if(bGetNetInfInited)
                return true;
    struct sockaddr_in *sin = NULL;
    struct ifaddrs *ifa = NULL, *ifList;
    if (getifaddrs(&ifList) < 0)
        return false;
    int i=0;
    for (ifa = ifList; ifa != NULL; ifa = ifa->ifa_next)
    {
        if(ifa->ifa_addr->sa_family == AF_INET)
        {
            printf("interfaceName: %s\n", ifa->ifa_name);
            sprintf(netInterfaceInf.interfaceName,"%s",ifa->ifa_name);
            sin = (struct sockaddr_in *)ifa->ifa_addr;
            printf("ipAddress: %s\n", inet_ntoa(sin->sin_addr));
            sprintf(netInterfaceInf.strIP,"%s",inet_ntoa(sin->sin_addr));
            sin = (struct sockaddr_in *)ifa->ifa_dstaddr;
            printf("broadcast: %s\n", inet_ntoa(sin->sin_addr));
            sprintf(netInterfaceInf.strCast,"%s",inet_ntoa(sin->sin_addr));
            sin = (struct sockaddr_in *)ifa->ifa_netmask;
            printf("subnetMask: %s\n", inet_ntoa(sin->sin_addr));
            sprintf(netInterfaceInf.strMask,"%s",inet_ntoa(sin->sin_addr));
            i++;
        }
    }
    freeifaddrs(ifList);
    bGetNetInfInited=true;
    return true;
}

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-03-10 03:25:58
认可0
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-03-10 03:27:29
认可0
这是我项目里面的头文件,以及获取本机IP的代码。至于怎么配置3520的IP,linux系统一样,网上搜吧。
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区