งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

The InetAddress Class.  ใช้แสดงและจัดการค้นหา IP Address,Host Name ของเครื่องคอมพิวเตอร์ที่ อยู่ในระบบ Network  ใช้ได้กับ IPv4 และ IPv6  ค้นหาผ่าน.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "The InetAddress Class.  ใช้แสดงและจัดการค้นหา IP Address,Host Name ของเครื่องคอมพิวเตอร์ที่ อยู่ในระบบ Network  ใช้ได้กับ IPv4 และ IPv6  ค้นหาผ่าน."— ใบสำเนางานนำเสนอ:

1 The InetAddress Class

2  ใช้แสดงและจัดการค้นหา IP Address,Host Name ของเครื่องคอมพิวเตอร์ที่ อยู่ในระบบ Network  ใช้ได้กับ IPv4 และ IPv6  ค้นหาผ่าน Local DNS Server  การเรียกใช้ import java.net.InetAddress

3 Creating New InetAddress Objects  No Constructor  มี 3 static Methods  public static InetAddress getByName(String hostName) throws UnknownHostException  public static InetAddress[] getAllByName(String hostName) throws UnknownHostException  public static InetAddress getLocalHost( ) throws UnknownHostException

4 InetAddress.getByName( )  การค้นหา Address จาก ชื่อเครื่องคอมพิวเตอร์  java.net.InetAddress address = java.net.InetAddress.getByName("www.oreilly.com");  InetAddress address = InetAddress.getByName("www.oreilly.com");

5 ตัวอย่าง InetAddress.getByName ( )  แสดง IP Address จากชื่อ Domain Name  import java.net.*;  import javax.swing.*;  public class showIPwww {  public static void main (String[] args) {  String doMainName="";  try {  doMainName=JOptionPane.showInputDialog("Domain name :");  InetAddress address = InetAddress.getByName(doMainName);  JOptionPane.showMessageDialog(null,"IP:"+address.getHostAddress());  }  catch (UnknownHostException ex) {  System.out.println("Could not find "+doMainName);  }

6 ตัวอย่าง InetAddress.getByName ( )  แสดง ชื่อ Domain Name จาก IP Address  import java.net.*;  import javax.swing.*;  public class showDoMainName {  public static void main (String[] args) {  String ip="";  try {  ip=JOptionPane.showInputDialog("Input IP Address :");  InetAddress address = InetAddress.getByName(ip);  System.out.println(address.getHostName());  }  catch (UnknownHostException ex) {  System.out.println("Could not find "+ip);  }

7 InetAddress[ ] getAllByName(String hostName) InetAddress[ ] getAllByName(String hostName)  คอมพิวเตอร์ที่อยู่บน Network อาจจะมีหลาย IP Address  ทำเก็บ IP Address ใน Array  InetAddress[] addresses = InetAddress.getAllByName("www.apple.com");

8 InetAddress[ ] getAllByName(String hostName)  ทำการแสดง IP Address ของ Microsoft.com  import java.net.*;  public class AllAddressesOfMicrosoft {  public static void main (String[] args) {  try {  InetAddress[] addresses =  InetAddress.getAllByName("www.microsoft.com");  for (int i = 0; i < addresses.length; i++) {  System.out.println(addresses[i]);  }  catch (UnknownHostException ex) {  System.out.println("Could not find  }

9 InetAddress[ ] getAllByName(String hostName)   ผลลัพธ์                  

10 public byte[] getAddress( )  การหาค่า IP Address โดยมาเก็บใน Byte Array  โดยที่ ต้อง แปลงค่า ก่อนนำมาแสดงผลโดยที่ ถ้าค่าที่ได้ติดลบให้บวกด้วย 256  InetAddress address = InetAddress.getByName("www.fareastern.ac.th");  byte[] ips=address.getAddress();

11 public byte[] getAddress( )  import java.net.*;  public class showHostNameByByteArray{  public static void main (String[] args) {  try {   InetAddress address = InetAddress.getByName("www.fareastern.ac.th");  byte[] ips=address.getAddress();  for(int i=0;i

12 InetAddress getLocalHost( )  Return InetAddress ของเครื่องที่ใช้อยู่  InetAddress me = InetAddress.getLocalHost( ); import java.net.*; public class showipLocal { public static void main (String[] args) { try { InetAddress address = InetAddress.getLocalHost( ); System.out.println(address); } catch (UnknownHostException ex) { System.out.println("Could not find this computer's address."); }

13 Testing Reachability  ทำการตรวจสอบ การเชื่อมต่อกับ Host ปลายทาง ว่าสามารถที่จะเชื่อมต่อได้หรือไม่  ใช้ได้กับ java 1.5 ขึ้นไป  ถ้าเกิดข้อผิดพลาดจะ thows IOException  อาจจะไม่สามารถเชื่อมต่อได้ เนื่องจากติด Firewall  public boolean isReachable(int timeout)  public boolean isReachable(NetworkInterface interface, int ttl, int timeout)  โดยที่ NetworkInterface คือ Network card ของเครื่อง  ttl(time-to-live) คือจำนวนสูงสุดของ Network Hops ที่ใช้

14 Testing Reachability  import java.net.*;  import java.util.*;  import javax.swing.*;  public class testIsReach {  public static void main (String[] args) {  try {  InetAddress address = InetAddress.getByName(“ ”);  long start=new Date().getTime();  if(address.isReachable(3000)){  long end=new Date().getTime()-start;  System.out.println(address +" "+end);  }else  System.out.println("Error ");  }  catch (Exception ex) {  System.out.println("Could not find "+doMainName);  }  // ผลลัพธ์ /

15 Address Types  public boolean isAnyLocalAddress( ) public boolean isLoopbackAddress( ) public boolean isLinkLocalAddress( ) public boolean isSiteLocalAddress( ) public boolean isMulticastAddress( ) public boolean isMCGlobal( ) public boolean isMCNodeLocal( ) public boolean isMCLinkLocal( ) public boolean isMCSiteLocal( ) public boolean isMCOrgLocal( )

16 ตัวอย่างการตรวจสอบ Address Types  import java.net.*;  import javax.swing.*;  public class IPCharacteristics {  public static void main(String[] args) {  String ip="";  try {  ip=JOptionPane.showInputDialog("Input IP Address :");  InetAddress address = InetAddress.getByName(ip);  if (address.isAnyLocalAddress( )) {  System.out.println(address + " is a wildcard address.");  }  if (address.isLoopbackAddress( )) {  System.out.println(address + " is loopback address.");  } 

17 ตัวอย่างการตรวจสอบ Address Types  if (address.isLinkLocalAddress( )) {  System.out.println(address + " is a link-local address.");  }  else if (address.isSiteLocalAddress( )) {  System.out.println(address + " is a site-local address.");  }  else {  System.out.println(address + " is a global address.");  }  if (address.isMulticastAddress( )) {  if (address.isMCGlobal( )) {  System.out.println(address + " is a global multicast address.");  }  else if (address.isMCOrgLocal( )) {  System.out.println(address  + " is an organization wide multicast address.");  } 

18 ตัวอย่างการตรวจสอบ Address Types  else if (address.isMCSiteLocal( )) {  System.out.println(address + " is a site wide multicast address.");  }  else if (address.isMCLinkLocal( )) {  System.out.println(address + " is a subnet wide multicast address.");  }  else if (address.isMCNodeLocal( )) {  System.out.println(address + " is an interface-local multicast address.");  }  else {  System.out.println(address + " is an unknown multicast address type.");  }  else {  System.out.println(address + " is a unicast address.");  }  catch (UnknownHostException ex) {  System.err.println("Could not resolve " + args[0]);  }

19 public boolean equals(Object o)  ตรวจสอบ ชื่อ Host Name ว่าอ้างถึง IP เดียวกันหรือไม่  import java.net.*;  public class CheckSameIP {  public static void main (String args[]) {  try {  InetAddress ibiblio = InetAddress.getByName("www.ibiblio.org");  InetAddress helios = InetAddress.getByName("helios.metalab.unc.edu");  if (ibiblio.equals(helios)) {  System.out.println  ("www.ibiblio.org is the same as helios.metalab.unc.edu");  }  else {  System.out.println  ("www.ibiblio.org is not the same as helios.metalab.unc.edu");  }  catch (UnknownHostException ex) {  System.out.println("Host lookup failed.");  }

20 The NetworkInterface Class  ทำหน้าที่ ตรวจสอบ Network Card ภายในเครื่อง  แสดง Network Card ภายในเครื่อง  ถ้า error จะ thows SocketException  ค้นหา primary Ethernet interface try { NetworkInterface ni = NetworkInterface.getByName("eth0"); if (ni == null) { System.err.println("No such interface: eth0" ); } catch (SocketException ex) { System.err.println("Could not list sockets." ); }

21 The NetworkInterface Class  โปรแกรมค้นหา NetworkInterface ภายในเครื่อง  import java.net.*;  import java.util.*;  public class findNetworkInterface {  public static void main(String[] args) throws Exception {  Enumeration interfaces = NetworkInterface.getNetworkInterfaces( );  while (interfaces.hasMoreElements( )) {  NetworkInterface ni = (NetworkInterface) interfaces.nextElement( );  System.out.println(ni);  }

22 The NetworkInterface Class  ผลลัพธ์ ( ขึ้นอยู่กับเครื่อง )  name:lo (MS TCP Loopback interface) index: 1 addresses:/ ;  name:eth0 (NVIDIA nForce Networking Controller - Packet Scheduler Miniport) index: 2 addresses:  name:eth1 (Broadcom b/g WLAN - Packet Scheduler Miniport) index: addresses:  /

23 public Enumeration getInetAddresses( )  ใน 1 Network interface อาจจะมีหลาย IP  ใช้แสดง IP Address ของ Network interface NetworkInterface eth0 = NetworkInterrface.getByName("eth0"); Enumeration addresses = eth0.getInetAddresses( ); while (addresses.hasMoreElements( )) { System.out.println(addresses.nextElement( )); }


ดาวน์โหลด ppt The InetAddress Class.  ใช้แสดงและจัดการค้นหา IP Address,Host Name ของเครื่องคอมพิวเตอร์ที่ อยู่ในระบบ Network  ใช้ได้กับ IPv4 และ IPv6  ค้นหาผ่าน.

งานนำเสนอที่คล้ายกัน


Ads by Google