2011-06-30 12 views
8

自分のiPhoneがワイヤレスで接続されているルータ(WiFiアクセスポイント)のIPアドレスを取得したいとします。コードはデバイスのIPアドレスだけを与えますiPhoneが接続されているルータのIPアドレスを取得する

誰かがコードを助けることができますか?

+0

を貼り付けるのviewDidLoadコピーの

#import <sys/types.h> #import <arpa/inet.h> #import <netdb.h> 

ありますが、[この](http://stackoverflow.com/questions/2113580/objective-c-how-to-fetch-を確認しましたルータアドレス?lq = 1)?は、あなたにいくつかのアイデアを与えるかもしれません。 – swiftBoy

答えて

0

あなたのアクセスポイントのルータは常にデフォルトのルートにする必要があります。その場合、問題は次のようになります。デフォルトのルートIPアドレスはどのようにして見つけられますか?

この記事は少し古いものですが、いくつかのサンプルコードがあります。それを試していない私は恐れているが、おそらくそれを試してみる価値がある。

How can I determine the default gateway on iPhone?

1

だけコピーし、このコードを貼り付けして使用すると、IPアドレスを介して接続されたすべてのIPアドレスを取得します実行します。必要なフレームワークは、この

int i=0; 
while (i>254) { 
       i++; 
       NSString *address = [NSString stringWithFormat:@"192.168.1.%d",i]; 
      struct hostent *he; 
      struct in_addr ipv4addr; 

      inet_pton(AF_INET, [address UTF8String], &ipv4addr); 
      he = gethostbyaddr(&ipv4addr, sizeof ipv4addr, AF_INET); 
      if (he) { 
       printf("Host name: %s\n", he->h_name); 
       NSLog(@"%@",address); 
       // NSLog(@"%@",address); 
      } 
     } 
関連する問題