jcifs.netbios
public final class NbtAddress extends Object
Applications can use the methods getLocalHost,
getByName, and
getAllByAddress to create a new NbtAddress instance. This
class is symmetric with java.net.InetAddress.
About NetBIOS: The NetBIOS name service is a dynamic distributed service that allows hosts to resolve names by broadcasting a query, directing queries to a server such as Samba or WINS. NetBIOS is currently the primary networking layer for providing name service, datagram service, and session service to the Microsoft Windows platform. A NetBIOS name can be 15 characters long and hosts usually registers several names on the network. From a Windows command prompt you can see what names a host registers with the nbtstat command.
C:\>nbtstat -a 192.168.1.15
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
JMORRIS2 <00> UNIQUE Registered
BILLING-NY <00> GROUP Registered
JMORRIS2 <03> UNIQUE Registered
JMORRIS2 <20> UNIQUE Registered
BILLING-NY <1E> GROUP Registered
JMORRIS <03> UNIQUE Registered
MAC Address = 00-B0-34-21-FA-3B
The hostname of this machine is JMORRIS2. It is
a member of the group(a.k.a workgroup and domain) BILLING-NY. To
obtain an java.net.InetAddress for a host one might do:
InetAddress addr = NbtAddress.getByName( "jmorris2" ).getInetAddress();
From a UNIX platform with Samba installed you can perform similar
diagnostics using the nmblookup utility.
Since: jcifs-0.1
See Also: java.net.InetAddress
| Field Summary | |
|---|---|
| static int | B_NODE
A B node only broadcasts name queries. |
| static int | H_NODE
A Hybrid node tries to resolve a name using the nameserver first. |
| static String | MASTER_BROWSER_NAME
This is a special name for querying the master browser that serves the
list of hosts found in "Network Neighborhood". |
| static int | M_NODE
Try Broadcast queries first, then try to resolve the name using the
nameserver. |
| static int | P_NODE
A Point-to-Point node, or P node, unicasts queries to a nameserver
only. |
| static String | SMBSERVER_NAME
A special generic name specified when connecting to a host for which
a name is not known. |
| Method Summary | |
|---|---|
| boolean | equals(Object obj)
Determines if this address is equal two another. |
| String | firstCalledName() |
| byte[] | getAddress()
Returns the raw IP address of this NbtAddress. |
| static NbtAddress[] | getAllByAddress(String host)
Retrieve all addresses of a host by it's address. |
| static NbtAddress[] | getAllByAddress(String host, int type, String scope)
Retrieve all addresses of a host by it's address. |
| static NbtAddress[] | getAllByAddress(NbtAddress addr)
Retrieve all addresses of a host by it's address. |
| static NbtAddress[] | getAllByName(String host, int type, String scope, InetAddress svr) |
| static NbtAddress | getByName(String host)
Determines the address of a host given it's host name. |
| static NbtAddress | getByName(String host, int type, String scope)
Determines the address of a host given it's host name. |
| static NbtAddress | getByName(String host, int type, String scope, InetAddress svr) |
| String | getHostAddress()
Returns this IP adress as a java.lang.String in the form "%d.%d.%d.%d". |
| String | getHostName()
The hostname of this address. |
| InetAddress | getInetAddress()
To convert this address to an InetAddress.
|
| static NbtAddress | getLocalHost()
Retrieves the local host address.
|
| static Name | getLocalName() |
| byte[] | getMacAddress()
Retrieves the MAC address of the remote network interface. |
| int | getNameType()
Returned the hex code associated with this name(e.g. |
| int | getNodeType()
Checks the node type of this address. |
| static InetAddress | getWINSAddress() |
| int | hashCode()
Returns a hashcode for this IP address. |
| boolean | isActive()
Determines if this address is active.
|
| boolean | isBeingDeleted()
Determines if this address in the process of being deleted.
|
| boolean | isGroupAddress()
Determines if the address is a group address. |
| boolean | isInConflict()
Determines if this address in conflict with another address.
|
| boolean | isPermanent()
Determines if this address is set to be permanent.
|
| static boolean | isWINS(InetAddress svr) |
| String | nextCalledName() |
| String | toString()
Returns the java.lang.String representaion of this address. |
jcifs.netbios.nameserver property must
be set.Returns: a four byte array
Parameters: host hostname to lookup all addresses for
Throws: java.net.UnknownHostException if there is an error resolving the name
type
and scope.
Parameters: host hostname to lookup all addresses for type the hexcode of the name scope the scope of the name
Throws: java.net.UnknownHostException if there is an error resolving the name
Parameters: addr the address to query
Throws: UnknownHostException if address cannot be resolved
getByName methods can be used for that.
Parameters: host hostname to resolve
Throws: java.net.UnknownHostException if there is an error resolving the name
type. Types(aka Hex Codes)
are used to distiquish the various services on a host. Here is
a fairly complete list of NetBIOS hex codes. Scope is not used but is
still functional in other NetBIOS products and so for completeness it has been
implemented. A scope of null or ""
signifies no scope.
Parameters: host the name to resolve type the hex code of the name scope the scope of the name
Throws: java.net.UnknownHostException if there is an error resolving the name
Returns: the text representation of the hostname associated with this address
InetAddress.
Returns: the java.net.InetAddress representation of this address.
Throws: UnknownHostException This is not likely as the IP returned
by InetAddress should be available
Returns: the MAC address as an array of six bytes
Throws: UnknownHostException if the host cannot be resolved to determine the MAC address.
Returns: B_NODE, P_NODE, M_NODE, H_NODE
Throws: UnknownHostException if the host cannot be resolved to find out.
Throws: UnknownHostException if the host cannot be resolved to find out.
Throws: UnknownHostException if the host cannot be resolved to find out.
Throws: UnknownHostException if the host cannot be resolved to find out.
Throws: UnknownHostException if the host cannot be resolved to find out.
Throws: UnknownHostException if the host cannot be resolved to find out.