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.