トップ «前の日記(2002-09-12) 最新 次の日記(2002-09-14)» 編集

Pyon's Diary

[はてなブックマーク登録数] [Google に登録] [RSS フィード] Gourmet Hardware Programming Society Software
成る可くJIS X 0213:2004對應MSフォント(5.0)、IPAフォント(003.02)で御覽下さい

2002-09-13 舊 平成拾四年葉月七日 (曇) [長年日記]

[節] Linuxで自ホストのIPアドレスを取得する。

Linuxで自ホストのIPアドレスを取得するには次の樣にすれば良いみたい。

#include <stdio.h>
#include <string.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <linux/if.h>
#include <unistd.h>

int
main (int argc, char** argv)
{
   char if_name[] = "eth2";
   int soc;
   struct ifreq    ifreq;
   struct sockaddr_in *s;

   strcpy (ifreq.ifr_name, if_name);

   soc = socket (AF_INET, SOCK_DGRAM, 0);

   ioctl(soc, SIOCGIFADDR, &ifreq);
   s = (struct sockaddr_in *)&(ifreq.ifr_addr);
   printf("%s ADDRESS : %s\n", if_name, inet_ntoa (s->sin_addr));

   ioctl(soc, SIOCGIFBRDADDR, &ifreq);
   s = (struct sockaddr_in *)&(ifreq.ifr_broadaddr);
   printf("%s BROADCAST : %s\n", if_name, inet_ntoa (s->sin_addr));

   ioctl(soc, SIOCGIFNETMASK, &ifreq);
   s = (struct sockaddr_in *)&(ifreq.ifr_netmask);
   printf("%s NETMASK : %s\n", if_name, inet_ntoa (s->sin_addr));

   close (soc);

   return 0;
}
此れをコンパイルして実行するとこんな感じ。
$ gcc -o iftest iftest.c
$ ./iftest
eth2 ADDRESS : 192.168.0.33
eth2 BROADCAST : 192.168.0.255
eth2 NETMASK : 255.255.255.0
Tags: Linux | del.icio.usに追加 | はてなブックマークに追加 | livedoor クリップに追加 | Yahoo! ブックマークに追加 | Google ブックマークに追加 | Permalink

[節] 魚山亭 (澁谷)

澁谷に在る魚山亭で呑む。一緒に呑んだのは、さとう君ときみ君の二人。椎茸が久振り*1に入荷されてゐたので早速注文する。生の椎茸を卓上の七輪で焼いて、香ばしい香りが上つて來た處でかぼすを絞つてぱくと食べる。此が日本酒と合つてとても美味しい。

序で鯖、秋刀魚と青魚の刺身を頼む。此も新鮮で脂が乘つてゐて口の中でとろける。矢張り美味しい。お酒が進む。

最後に名物の冷や汁を食べてお終ひ。美味しうござゐました。

Tags: Gourmet | del.icio.usに追加 | はてなブックマークに追加 | livedoor クリップに追加 | Yahoo! ブックマークに追加 | Google ブックマークに追加 | Permalink

*1 約七箇月振り。本當に嬉しい。

本日のツッコミ(全1件) [ツッコミを入れる]
[ツ] こ○ばえ (2002-09-13 17:05)

sdvia って知ってる?

[]

© pyon