Other Networking Commands and Setup

   

HP-UX Virtual Partitions
By Marty Poniatowski

Table of Contents
Chapter 13.  Networking


Setting up a network is an intensive planning exercise for both network and system administrators. No two networking environments are alike. There is typically a lot of networking electronics to which your system is connected. There are many useful commands related to testing connectivity to other systems and networking configuration. Should you encounter a problem, you want to have an understanding of some networking commands that can be lifesavers. In addition, you can encounter some tricky aspects to networking setup if you have some networking hardware that your UNIX systems must interface to, such as routers, gateways, bridges, etc. I give an example of one such case: connecting a UNIX system to a router. At the same time, I cover some of the most handy networking commands as part of this description.

Consider Figure 13-11, in which a UNIX system is connected directly to a router.

Figure 13-11. UNIX System and Router Example

graphics/13fig13.gif

Here we have a UNIX system connected to segment 128.185.61. This is a class "B" Internet address with subnetting enabled.

The /etc/hosts file needs to have in it the UNIX system with node ID 2, the router, and any other systems on this segment or segments on the other side of the router.

If the router is properly configured, we should be able to seamlessly connect from 61 to systems on segments 60, 62, and 63. The router should be configured to allow our system to connect to systems on other segments (60, 62, and 63) by going through the router. Some unforeseen configuration was required to make this simple network operate seamlessly. In this case, a problem occurred getting system1 to connect to systems on the other side of the router on 60, 62, and 63. Before discussing the additional configuration that needed to be done, I first show the /etc/hosts file and then use some very useful UNIX commands that show the state of the network. Here is the /etc/ hosts file showing just the UNIX system and router:

$ cat /etc/hosts

127.0.0.1

localhosts loopback

128.185.61.1

router1# router

128.185.61.2

system1# UNIX system on 61

128.185.62.1

system2# UNIX system on 62

This host file is simple and allows system1 to connect to router1 and system2. The connection from system1 to system2 is accomplished by going through the router.

ping

Let's look at one of the most commonly used networking commands - ping. This command is used to determine whether or not a connection exists between two networking components. ping is a simple command that sends an ICMP echo packet to the host you specify once per second. You may recall that ICMP was covered earlier under the network, or third layer. ping stands for Packet InterNet Groper. ping differs somewhat among UNIX variants, mostly in the reporting that ping produces when no options are provided.

Some systems provide performance information when ping is issued with no options; others report that the system "is alive". The following is an example of checking the connection between the local system and another system on the network called austin:

 martyp $ ping austin  austin is alive  martyp $ 

You can adjust the packet size and number of iterations on most UNIX variants as in the HP-UX example shown below specifying a packet size of 4096 and interval of 5:

 # ping l2 4096 5  PING l2: 4096 byte packets  4096 bytes from 10.1.1.12: icmp_seq=0. time=2. ms  4096 bytes from 10.1.1.12: icmp_seq=1. time=2. ms  4096 bytes from 10.1.1.12: icmp_seq=2. time=2. ms  4096 bytes from 10.1.1.12: icmp_seq=3. time=2. ms  4096 bytes from 10.1.1.12: icmp_seq=4. time=2. ms  ----l2 PING Statistics---- 5 packets transmitted, 5 packets received, 0% packet loss  round-trip (ms)  min/avg/max = 2/2/2  # 

AIX allows you to specify the interval with -I as well as other options, including packet size, and number of iterations. These options are shown for an AIX system in the following example:

 martyp $ ping -I 5 austin 4096 10  PING austin: 4096 data bytes  4104 bytes from austin (128.185.61.5): icmp_seq=0. time=8. ms  4104 bytes from austin (128.185.61.5): icmp_seq=1. time=9. ms  4104 bytes from austin (128.15.61.5): icmp_seq=2. time=9. ms  4104 bytes from austin (128.15.61.5): icmp_seq=3. time=9. ms  4104 bytes from austin (128.15.61.5): icmp_seq=4. time=8. ms  4104 bytes from austin (128.15.61.5): icmp_seq=5. time=9. ms  4104 bytes from austin (128.15.61.5): icmp_seq=6. time=9. ms  4104 bytes from austin (128.15.61.5): icmp_seq=7. time=9. ms  4104 bytes from austin (128.15.61.5): icmp_seq=8. time=9. ms  4104 bytes from austin (128.15.61.5): icmp_seq=9. time=9. ms  ----austin PING Statistics---- 10 packets transmitted, 10 packets received, 0% packet loss  round-trip (ms)  min/avg/max = 9/9/15  martyp $ 

In this example, we ping austin every five seconds, with a packet size of 4096 bytes for a total of ten times.

Let's now get back to our example.

How do I know that I have a connection between system1 and the router and the other systems on the other side of the router? I use the ping command. Here is how I know that system1 is connected to router1:

 $ ping router1  PING router1: 64 byte packets  64 bytes from 128.185.61.2: icmp_seq=0. time=0. ms  64 bytes from 128.185.61.2: icmp_seq=1. time=0. ms  64 bytes from 128.185.61.2: icmp_seq=2. time=0. ms 

Each line of output here represents a response that was returned from the device that was pinged. This means that the device responded. You continue to get this response indefinitely and have to type ^c (control c) to terminate the ping. If no output is produced, as shown below, then no response occurred and you may have a problem between your system and the device to which you are checking the connection:

 $ ping system2  PING router1: 64 byte packets 

In this scenario, you would see this message and that is as far as you would get. A ^c will kill the ping, and you see that some number of packets were sent and none were received. I did indeed get this response when issuing the ping command, so I know that a problem exists with the connection between system1 and router1.

ping should be used only for testing purposes such as manual fault isolation, because it generates a substantial amount of network traffic. You do not want to use ping on an ongoing basis, such as in a script that is running continuously.

A nice variation of ping that I use is to specify a packet size of 4096 bytes, rather than the default of 64 bytes shown in the previous examples, and count the number of times ping transmits before terminating, rather than having to type ^c to terminate ping. The following example shows this:

 $ ping router1 4096 5  PING router1: 64 byte packets  4096 bytes from 128.185.51.2: icmp_seq=0. time=8. ms  4096 bytes from 128.185.51.2: icmp_seq=1. time=8. ms  4096 bytes from 128.185.51.2: icmp_seq=2. time=9. ms  4096 bytes from 128.185.51.2: icmp_seq=3. time=8. ms  4096 bytes from 128.185.51.2: icmp_seq=4. time=8. ms 

Notice that the time required to transmit and receive a response, the round-trip time, is substantially longer than with only 64 bytes transmitted. I usually find that the round-trip time for 64 bytes is 0 ms, although this depends on a number of factors, including network topology and network traffic.

netstat

From the earlier description of the subnet mask, you can see that routing from one host to another can be configured in a variety of ways. The path that information takes in getting from one host to another depends on routing.

You can obtain information related to routing with the netstat command. The -r option to netstat shows the routing tables, which you usually want to know, and the -n option can be used to print network addresses as numbers rather than as names. With the -v option, you get additional information related to routing, such as the subnet mask. In the following examples, netstat is issued with the -r option (this is used when describing the netstat output), the -rn options, and the -rnv options, so you can compare the outputs:

 # netstat -r  Routing tables  Dest/Netmask          Gateway         Flags  Refs       Use  Interface  Pmtu  o2                    o2              UH       0    1890905  lo0        4136  o2                    o2              UH       0        343  lan1       4136  o2                    o2              UH       0          0  lan0       4136  10.1.1.0              o2              U        2          0  lan0       1500  10.1.1.0              o2              U        2          0  lan1       1500  127.0.0.0             o2              U        0          0  lo0        4136  default               10.1.1.1        UG       0          0  lan1       1500  # 
 # netstat -rn  Routing tables  Dest/Netmask          Gateway          Flags  Refs       Use  Interface  Pmtu  127.0.0.1             127.0.0.1        UH       0    1891016  lo0        4136  10.1.1.10             10.1.1.10        UH       0        343  lan1       4136  10.1.1.110            10.1.1.110       UH       0          0  lan0       4136  10.1.1.0              10.1.1.110       U        2          0  lan0       1500  10.1.1.0              10.1.1.10        U        2          0  lan1       1500  127.0.0.0             127.0.0.1        U        0          0  lo0        4136  default               10.1.1.1         UG       0          0  lan1       1500  # 
 # netstat -rnv  Routing tables  Dest/Netmask              Gateway          Flags  Refs       Use  Interface  Pmtu  127.0.0.1/255.255.255.255   127.0.0.1        UH      0    1891036  lo0       4136  10.1.1.10/255.255.255.255   10.1.1.10        UH      0        343  lan1      4136  10.1.1.110/255.255.255.255  10.1.1.110       UH      0          0  lan0      4136  10.1.1.0/255.255.255.0      10.1.1.110       U       2          0  lan0      1500  10.1.1.0/255.255.255.0      10.1.1.10        U       2          0  lan1      1500  127.0.0.0/255.0.0.0         127.0.0.1        U       0          0  lo0       4136  default/0.0.0.0             10.1.1.1         UG      0          0  lan1      1500  # 

The first and second outputs show that our system, o2, has three interfaces: The first is the loopback interface called lo0. The second. is at .10, and the third is at .110 (which we can see from the -rn output). The next two lines show that our destination of 10.1.1.0, which is a network, can be accessed through either the card at .10 or .110. The third output provides verbose information. The last line is for the default route. This entry says to send packets to 10.1.1.1 if a more direct route can't be found.

With netstat, some information is provided about the router. The -r option shows information about routing, but many other useful options to this command are also available. Of particular interest in this output is "Flags," which defines the type of routing that takes place. Here are descriptions of the most common flags from the UNIX manual pages:

1=U

Route to a network via a gateway that is the local host itself.

3=UG

Route to a network via a gateway that is the remote host.

5=UH

Route to a host via a gateway that is the local host itself.

7=UGH

Route to a host via a remote gateway that is a host.

Also, I use two forms of netstat to obtain network statistics, as opposed to routing information. The first is netstat -i, which shows the state of interfaces that are autoconfigured. Because I am most often interested in getting a summary of lan0, I issue this command. netstat -i gives a good rundown of lan0, such as the network it is on, its name, and so on.

The following example shows the output of netstat -i on a Solaris and HP-UX system, respectively:

 # netstat -i  Name  Mtu   Network        Address          Ipkts Ierrs   Opkts Oerrs  Coll  ni0*  0     none           none                 0     0       0     0     0  ni1*  0     none           none                 0     0       0     0     0  lo0   4608  loopback       127.0.0.1          232     0     232     0     0  lan0  1500  169.200.112    169.200.112.2  3589746     2   45630     0   104 
 # netstat -i  Name          Mtu Network          Address            Ipkts      Opkts  lan1         1500 10.1.1.0         o2              59935480  163641547  lan0         1500 10.1.1.0         o2                139173   12839358  lo0          4136 127.0.0.0        o2               1892333    1892345  # 

Here is a description of the fields in the netstat example:

Name

The name of your network interface (Name), in this case, lan0.

MTU

The "maximum transmission unit," which is the maximum packet size sent by the interface card.

Network

The network address of the LAN to which the interface card is connected (169.200).

Address

The host name of your system. This is the symbolic name of your system as it appears in the file /etc/hosts.

The statistical information includes:

Ipkts

The number of packets received by the interface card, in this case lan0.

Ierrs

The number of errors detected on incoming packets by the interface card (on some UNIX variants).

Opkts

The number of packets transmitted by the interface card.

Oerrs

The number of errors detected during the transmission of packets by the interface card (on some UNIX variants.)

Collis

The number of collisions that resulted from packet traffic (on some UNIX variants.)

netstat provides cumulative data since the node was last powered up; you might have a long elapsed time over which data was accumulated. If you are interested in seeing useful statistical information, you can use netstat with different options. You can also specify an interval over which to report statistics. I usually ignore the first entry, because it shows all data since the system was last powered up. Therefore, the data includes non-prime hours when the system was idle. I prefer to view data at the time the system is working its hardest. The following netstat example provides network interface information every five seconds on a Solaris system:

 # netstat -I lan0 5  (lan0)-> input           output        (Total)-> input          output      packets  errs  packets  errs colls      packets  errs packets  errs colls      3590505     2    45714     0   104      3590737     2   45946     0   104          134     0        5     0     0          134     0       5     0     0          174     0        0     0     0          174     0       0     0     0          210     0       13     0     0          210     0      13     0     0          165     0        0     0     0          165     0       0     0     0          169     0        0     0     0          169     0       0     0     0          193     0        0     0     0          193     0       0     0     0          261     0        7     0     0          261     0       7     0     0          142     0        8     0     0          142     0       8     0     0          118     0        0     0     0          118     0       0     0     0          143     0        0     0     0          143     0       0     0     0          149     0        0     0     0          149     0       0     0     0 

With this example, you get multiple outputs of what is taking place on the LAN interface. As I mentioned earlier, you may want to ignore the first output, because it includes information over a long time period. This may include a time when your network was idle, and therefore the data is not important to you.

The following netstat example provides network interface information every five seconds on an HP-UX 11i system:

 # netstat -I lan0 5  (lan0)-> input      output      (Total)-> input     output          packets     packets              packets    packets           139185    12841621             61968131  178375605           139185    12841714             61968172  178375698           139185    12841810             61968213  178375794           139185    12841877             61968247  178375861           139185    12841912             61968265  178375896           139185    12842095             61968358  178376079           139187    12842244             61968413  178376240           139189    12842352             61968470  178376360           139189    12842453             61968525  178376461           139190    12842482             61968565  178376498           139190    12842539             61968594  178376555           139190    12842671             61968667  178376699 

You can specify the network interface on which you want statistics reported by using -I interface; in the case of the example, it was -I lan0. An interval of five seconds was also used in this example.

Yet another use of netstat is to show the state of network sockets. netstat -a produces a list of protocols, queues, local and remote addresses, and protocol states. All this information is useful for showing active communications, as shown in the following example:

 # netstat -a  Active Internet connections (including servers)  Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)  tcp        0      2  system1.telnet        atlm0081.atl.hp..1319  ESTABLISHED  tcp        0      0  *.1095                 *.*                    LISTEN  tcp        0      0  *.psmond               *.*                    LISTEN  tcp        0      0  *.mcsemon              *.*                    LISTEN  tcp        0      0  localhost.8886         localhost.1062         ESTABLISHED  tcp        0      0  localhost.1062         localhost.8886         ESTABLISHED  tcp        0      0  *.8886                 *.*                    LISTEN  tcp        0      0  *.8887                 *.*                    LISTEN  tcp        0      0  *.1006                 *.*                    LISTEN  tcp        0      0  *.978                  *.*                    LISTEN  tcp        0      0  *.22370                *.*                    LISTEN  tcp        0      0  *.389                  *.*                    LISTEN  tcp        0      0  *.8181                 *.*                    LISTEN  tcp        0      0  *.1054                 *.*                    LISTEN  tcp        0      0  *.1053                 *.*                    LISTEN  tcp        0      0  *.diagmond             *.*                    LISTEN  tcp        0      0  *.1045                 *.*                    LISTEN  tcp        0      0  *.1038                 *.*                    LISTEN  tcp        0      0  *.135                  *.*                    LISTEN  tcp        0      0  *.smtp                 *.*                    LISTEN  tcp        0      0  *.1036                 *.*                    LISTEN  tcp        0      0  *.appconn              *.*                    LISTEN  tcp        0      0  *.spc                  *.*                    LISTEN  tcp        0      0  *.dtspc                *.*                    LISTEN  tcp        0      0  *.recserv              *.*                    LISTEN  tcp        0      0  *.klogin               *.*                    LISTEN  tcp        0      0  *.kshell               *.*                    LISTEN  tcp        0      0  *.chargen              *.*                    LISTEN  tcp        0      0  *.discard              *.*                    LISTEN  tcp        0      0  *.echo                 *.*                    LISTEN  tcp        0      0  *.time                 *.*                    LISTEN  tcp        0      0  *.daytime              *.*                    LISTEN  tcp        0      0  *.printer              *.*                    LISTEN  tcp        0      0  *.auth                 *.*                    LISTEN  tcp        0      0  *.exec                 *.*                    LISTEN  tcp        0      0  *.shell                *.*                    LISTEN  tcp        0      0  *.login                *.*                    LISTEN  tcp        0      0  *.telnet               *.*                    LISTEN  tcp        0      0  *.ftp                  *.*                    LISTEN  tcp        0      0  *.795                  *.*                    LISTEN  tcp        0      0  *.792                  *.*                    LISTEN  tcp        0      0  *.*                    *.*                    CLOSED  tcp        0      0  *.787                  *.*                    LISTEN  tcp        0      0  *.783                  *.*                    LISTEN  tcp        0      0  *.779                  *.*                    LISTEN  tcp        0      0  *.portmap              *.*                    LISTEN  tcp        0      0  *.2121                 *.*                    LISTEN  udp        0      0  *.1127                 *.*  udp        0      0  *.177                  *.*  udp        0      0  *.1003                 *.*  udp        0      0  *.*                    *.*  udp        0      0  *.*                    *.*  udp        0      0  *.*                    *.*  udp        0      0  *.*                    *.*  udp        0      0  *.nfsd                 *.*  udp        0      0  *.976                  *.*  udp        0      0  *.22370                *.*  udp        0      0  *.1097                 *.*  udp        0      0  *.1095                 *.*  udp        0      0  *.1079                 *.*  udp        0      0  *.135                  *.*  udp        0      0  *.*                    *.*  udp        0      0  *.1045                 *.*  udp        0      0  *.snmp                 *.*  udp        0      0  *.1040                 *.*  udp        0      0  *.tftp                 *.*  udp        0      0  *.chargen              *.*  udp        0      0  *.discard              *.*  udp        0      0  *.echo                 *.*  udp        0      0  *.time                 *.*  udp        0      0  *.daytime              *.*  udp        0      0  *.ntalk                *.*  udp        0      0  *.bootps               *.*  udp        0      0  *.1023                 *.*  udp        0      0  *.787                  *.*  udp        0      0  *.798                  *.*  udp        0      0  *.797                  *.*  udp        0      0  *.1037                 *.*  udp        0      0  *.*                    *.*  udp        0      0  *.1036                 *.*  udp        0      0  *.1035                 *.*  udp        0      0  *.777                  *.*  udp        0      0  *.portmap              *.*  udp        0      0  *.1034                 *.*  udp        0      0  *.syslog               *.*  udp        0      0  *.2121                 *.*  Active UNIX domain sockets  Address  Type   Recv-Q Send-Q    Inode     Conn    Refs  Nextref Addr    bb9c00 stream      0      0   af9000        0       0        0 /tmp/.AgentSoA    ced700 dgram       0      0   c99400        0       0        0 /opt/dcelocalr    ce9e00 dgram       0      0   d23000        0       0        0 /opt/dcelocalr    b0d200 dgram       0      0   b87000        0       0        0 /opt/dcelocalr    997a00 stream      0      0   b84800        0       0        0 /opt/dcelocal1    b24e00 dgram       0      0   b84000        0       0        0 /opt/dcelocal1    d59400 dgram       0      0   b66400        0       0        0 /var/tmp/psb_t    d85c00 dgram       0      0   b67000        0       0        0 /var/tmp/psb_t    c8b200 dgram       0      0   b12000        0       0        0 /opt/dcelocalr    c8b400 stream      0      0   b78400        0       0        0 /opt/dcelocal5    c8b300 dgram       0      0   b78000        0       0        0 /opt/dcelocal5    c90900 dgram       0      0   d22400        0       0        0 /opt/dcelocalr    c78c00 dgram       0      0   ba1000   c4a180       0        0 /opt/dcelocal0    b1e900 dgram       0      0   9a4400        0  c32e80        0 /opt/dcelocald    d64100 stream      0      0   d24c00        0       0        0 /opt/dcelocal5    9e1600 dgram       0      0   9a4000   d4d940       0        0 /opt/dcelocal2    d64200 dgram       0      0   cfc800        0  c32c80        0 /opt/dcelocal9    d12d00 dgram       0      0   cfc000   c32c00       0        0 /opt/dcelocal1    c5ee00 stream      0      0   b1c000        0       0        0 /opt/dcelocal4    d19d00 dgram       0      0   ce4800        0       0        0 /opt/dcelocald    cf0c00 dgram       0      0   a92800        0  af15c0        0 /opt/dcelocal7    d2d600 dgram       0      0   a93800   c32c00       0   d4db80 /opt/dcelocal0    c9b900 dgram       0      0   a93c00        0       0        0 /opt/dcelocald    d6c800 stream      0      0   ba3000        0       0        0 /var/opt/OV/sT   # 

A lot of information is in this output. You can refer to the online manual pages on your HP-UX system.

The first line shows the Proto tcp to the Local Address system1.telnet as having a (state) of ESTABLISHED. This is the connection we have initiated to this system. We are sitting on system1 with a telnet session open to the system on which we ran netstat.

Most of the remaining tcp protocol entries are listening. This means that they are listening for incoming connections, as indicated by the LISTEN. They have a wildcard in the Foreign Address field, which will contain the address when a connection has been established. We are one of the few connections that has been made, as indicated by the ESTABLISHED.

All the send and receive queues, shown as Recv-Q and Send-Q, are empty as indicated by 0.

The UNIX domain sockets at the end of the output are stream and datagram connections for a variety of services such as NFS.

This output gives you an appreciation of the immense amount of activity taking place from a networking perspective on your UNIX system. Networking and connectivity have been among the most advanced aspects of UNIX since its inception.

route

The information displayed with netstat is the routing tables for your system. Some are automatically created with the ifconfig command when your system is booted or when the network interface is initialized. Routes to networks and hosts that are not directly connected to your system are entered with the route command.

Routing changes can be made on the fly, as I did to change the Flags from U to UG:

 $ /usr/sbin/route add default 128.185.61.1 3 

First is the route command. Second, we specify that we wish to add a route; the other option is to delete a route. Third, we specify the destination, in this case, the default. This could be a specific host name, a network name, an IP address, or default that signifies the wildcard gateway route that is shown in our example. Fourth is the gateway through which the destination is reached. In the above example, the IP address was used, but this could also be a host name. The 3 corresponds to the count that is used to specify whether the gateway is the local host or a remote gateway. If the gateway is the local host, then a count of 0 is used. If the gateway is a remote host, which is the case in the example, a count of >0 is used. This corresponds to UG for Flags. This manually changed the network routing table by adding a default route with the appropriate Flags. Issuing this command fixed the problem I encountered trying to get system1 to talk to the systems on the other side of the router (remember Figure 13-11).

Before issuing /usr/sbin/route with the add option, you can first use the delete option to remove the existing default route, which is not working.

route commands usually appear in one of the system's startup files so that every time the system boots, route commands are issued. This ensures that the right connectivity information is in place every time the system starts.

ifconfig

The ifconfig command provides additional information on a LAN interface. The following example provides the configuration of a network interface:

 $ /etc/ifconfig lan0  lan0:   flags=863<UP,BROADCAST,NOTRAILERS,RUNNING>           inet 128.185.61.2 netmask ffff0000 broadcast 128.185.61.255 

From this example, we can quickly see that the interface is up, it has an address of 128.185.61.2, and it has a netmask of ffff0000. A gain, keep in mind that your network interface may have a different name, such as le0.

You can use ifconfig to get the status of a network interface as I have done here to assign an address to a network interface, or to configure network interface parameters. The network address you have falls into classes such as "A," "B," or "C," as mentioned earlier. You want to be sure that you know the class of your network before you start configuring your LAN interface. This example is a class "B" network, so the netmask is defined as ffff0000 (typical for a class "B" address), as opposed to ffffff00, which is typical for a class "C" network. The netmask is used to determine how much of the address to reserve for subdividing the network into smaller networks. The netmask can be represented in hex, as shown above, or in decimal for-mat, as in the /etc/hosts file. Here is the ifconfig command I issued to configure the interface:

 $ /etc/ifconfig lan0 inet 128.185.61.2 netmask 255.255.0.0 
  • The 255.255.0.0 corresponds to the hex ffff000 shown earlier for the class "B" subnet mask.

  • lan0 is the interface being configured.

  • inet is the address family, which is currently the only one supported for this system.

  • 128.185.61.2 is the address of the LAN interface for system1.

  • netmask shows how to subdivide the network.

  • 255.255.0.0 is the same as ffff0000, which is the netmask for a class "B" address.

I have made good use of netstat, ping, and ifconfig to help get the status of the network. ifconfig, route, and /etc/hosts are used to configure the network, should you identify any changes you need to make. The subnet examples show how flexible you can be when configuring your network for both your current and future needs. In simple networks, you may not need to use many of these commands or complex subnetting. In complex networks, or at times when you encounter configuration difficulties, you may have to make extensive use of these commands. In either case, network planning is an important part of setting up UNIX systems.

Most of the commands used throughout this chapter are a part of every system administrator's tool box. Networking is so vital to the use of UNIX systems, however, that having background in this area can help with your overall understanding of the system and how to use it more effectively.

rpcinfo

As a user, you may have a need to NFS mount a directory on another system or perform some other function that you haven't before used on your system. You can determine whether various pieces of functionality have been enabled by evaluating the daemons running on your system. rpcinfo allows you to generate a Remote Procedure Call (RPC) on a system, including your local system, by issuing the command rpc -p system_name.

The following example shows issuing rpcinfo -p on our local system:

 # rpcinfo -p     program vers proto    port  service      100000    2   tcp     111  portmapper      100000    2   udp     111  portmapper      100024    1   udp     777  status      100024    1   tcp     779  status      100021    1   tcp     783  nlockmgr      100021    1   udp    1035  nlockmgr      100021    3   tcp     787  nlockmgr      100021    3   udp    1036  nlockmgr      100020    1   udp    1037  llockmgr      100020    1   tcp     792  llockmgr      100021    2   tcp     795  nlockmgr      100068    2   udp    1040  cmsd      100068    3   udp    1040  cmsd      100068    4   udp    1040  cmsd      100068    5   udp    1040  cmsd      100083    1   tcp    1036  ttdbserver      100005    1   udp     976  mountd      100005    1   tcp     978  mountd      100003    2   udp    2049  nfs      150001    1   udp    1003  pcnfsd      150001    2   udp    1003  pcnfsd      150001    1   tcp    1006  pcnfsd      150001    2   tcp    1006  pcnfsd  # 

Many daemons are running on the system that are important to the functionality I like to use. mountd is running, which indicates that a server could NFS mount file systems on this computer. There is other setup required for the mount to take place, but at least the daemon is running to support this functionality. In addition, pcnfsd is running, meaning that we have support for Windows-based NFS access.

arp

The mechanism used to maintain a list of IP addresses and their corresponding MAC addresses is the ARP cache. The mapped addresses are only held in the cache for minutes, so if you want to see what addresses have been mapped recently, you can use the arp command as shown in the following example:

 # arp -a  o2 (10.1.1.10) at 0:10:83:f7:a2:f8 ether  l1 (10.1.1.11) at 0:10:83:f7:2e:d0 ether  63.88.85.1 (63.88.85.1) at 0:30:94:b0:b8:a0 ether  l3 (10.1.1.200) at 0:10:83:fc:92:88 ether  tape1 (10.1.1.14) at 0:10:83:f7:e:32 ether  tape1 (10.1.1.14) at 0:10:83:f7:e:32 ether  tape1 (10.1.1.14) at 0:10:83:f7:e:32 ether  tape1 (10.1.1.14) at 0:10:83:f7:e:32 ether  63.88.85.18 (63.88.85.18) -- no entry 

Current arp entries are displayed with the -a command. You can create an entry with the -s option.

lanadmin

lanadmin is used to view and perform administration on network cards. Issuing lanadmin with no options brings you into the interactive interface as shown in the following example:

 # lanadmin            LOCAL AREA NETWORK ONLINE ADMINISTRATION, Version 1.0                 Copyright 1994 Hewlett Packard Company.                         All rights are reserved.  Test Selection mode.           lan     = LAN Interface Administration           menu    = Display this menu           quit    = Terminate the Administration           terse   = Do not display command menu           verbose = Display command menu  Enter command: lan  LAN Interface test mode. LAN Interface PPA Number = 0          clear    = Clear statistics registers          display  = Display LAN Interface status and statistics registers          end      = End LAN Interface Administration, return to Test Selection          menu     = Display this menu          ppa      = PPA Number of the LAN Interface          quit     = Terminate the Administration, return to shell          reset    = Reset LAN Interface to execute its selftest          specific = Go to Driver specific menu  Enter command: d                        LAN INTERFACE STATUS DISPLAY  PPA Number                      = 0  Description                = lan0 Hewlett-Packard 10/100 TX Half-Duplex TT = 1500  Type (value)                    = ethernet-csmacd(6)  MTU Size                        = 1500  Speed                           = 100000000  Station Address                 = 0x1083ffcaae  Administration Status (value)   = up(1)  Operation Status (value)        = down(2)  Last Change                     = 237321866  Inbound Octets                  = 0  Inbound Unicast Packets         = 0  Inbound Non-Unicast Packets     = 0  Inbound Discards                = 0  Inbound Errors                  = 0  Inbound Unknown Protocols       = 0  Outbound Octets                 = 820  Outbound Unicast Packets        = 20  Outbound Non-Unicast Packets    = 0  Outbound Discards               = 1  Outbound Errors                 = 0  Outbound Queue Length           = 0  Specific                        = 655367  Press <Return> to continue 

In this example, we issued lanadmin and specified that we wanted to go into the lan interface administration and that we wanted to display information about the interface.

lanadmin can also be used to perform such tasks as to change the MTU or speed of a lan interface with the -M and -s options, respectively.

ndd

ndd is used to perform network tuning and view information about network parameters. To view information about all supported tunable parameters with ndd, you would issue ndd -h supported. You can get the value of a parameter using the -get option you can set the value of a parameter with the -set option.

nslookup

nslookup is used to resolve a host name into an IP address. You issue nslookup hostname and nslookup will access either the /etc/resolv.conf file or /etc/hosts to resolve the host name. The following example shows a system using /etc/hosts to produce the IP address of system l2:

 # nslookup l2  Using /etc/hosts on: l3  looking up FILES  Name:    l2  Address:  10.1.1.12  # 

You can also run nslookup in interactive mode by issuing the command with no command-line arguments. The following example shows issuing the command with no command line arguments to get into interactive mode and then typing help to get information on commands you can issue:

 # nslookup l2  > help  NAME            - print address information about NAME  IP-ADDRESS      - print hostname information about IP-ADDRESS  policy          - print switch policy information  server NAME     - set default server to NAME, using current de- fault server  lserver NAME   - set default server to NAME, using initial serv- er  set OPTION     - sets the OPTION      all        -  print options, current server and host     [no]swtrace - print lookup result and lookup switch messages  > 

       
    Top
     



    HP-UX Virtual Partitions
    HP-UX Virtual Partitions
    ISBN: 0130352128
    EAN: 2147483647
    Year: 2002
    Pages: 181

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net