랜포트가 몇 개인지 확인하기 위해서는 시스템 정보를 뒤지는 방법이 있겠습니다만,

ifconfig를 실행해서 구하는 정보가 제일 정확하지요. ifconfig를 실행하면 eth- 접두어를 시작으로

랜포트별 네트워크 환경을 출력하면 eth문자열이 몇 개 나오는지 확인해도

랜포트 개수를 알 수 있습니다.

#define BUF_SIZE    1024

int count_ethercard( void)
{
  FILE   *fp;
  char    buff[BUF_SIZE];
  char   *cmd_ifconfig   = "ifconfig -a | grep eth";
  int     cnt_ether;

  fp = popen( cmd_ifconfig, "r");
  if ( NULL == fp)
    return 0;

  // 랜카드의 개수는 출력되는 행의 개수로 확인한다.
  cnt_ether = 0;
  while( NULL != fgets( buff, BUF_SIZE, fp)){
      cnt_ether++;
  }
  pclose(fp);

  return cnt_ether;
}


popen()으로 간단히 랜포트 개수를 구했습니다.