bob@anwar.UUCP (Bob Erickson) (08/04/84)
I have just installed our ethernet system connecting our VAX 11/750 and our Pyramid 90x systems. Everything is working quite well except for a few problems which are non-critical. I have spent a little time tracing these problems down but now turn to the wizards on this net for a little insight before I go whole hog. We are using Interlan ethernet boards on both systems which are referred to on both systems as 'il0'. After connecting the system, everything worked fine. rlogin, rsh, rcp, ftp, and telenet all worked as stated. The commands that didn't work were ruptime, and rwho. But only on the VAX they didn't work. They worked fine on on the Pyramid, but only reported info about the Pyramid. I traced it down to the fact that the 'rwhod' process on our VAX determined that there were no hardware interfaces present with 'BROADCAST' ability and therefor never sent out or received messages. In the function 'configure' in rwhod.c, a check is made to see if the field 'ifr_flags' has the bits 'IFF_BROADCAST|IFF_POINTOPOINT' set. If they are not set, the interface is ignored. So now I have no reason to suspect a fault in rwhod. Next I compared the ifconfig output from both systems and got the following result. Working system (Pyramid): /etc/ifconfig il0 il0: 193.0.9.72 flags=63<UP,BROADCAST,NOTRAILERS,RUNNING> Non Working System (VAX): /etc/ifconfig il0 il0: 193.0.9.22 flags=21<UP,NOTRAILERS> As expected, the BROADCAST flag was not set. Time to go rummaging through the driver, where I found that this flag is set in the routine 'ilsetaddr' in the interlan driver if_il.c. This routine I believe is called when you run the /etc/ifconfig command in the rc.local file. The /etc/ifconfig commands are the same on both systems except for the host names of course. Just to make sure no other process was unsetting this flag I have the following two lines in my rc.local file. /etc/ifconfig il0 `hostname` up -trailers arp # configure the host /etc/ifconfig il0 >/dev/console Where I still get the result printed at the console: il0: 193.0.9.22 flags=21<UP,NOTRAILERS> Here's where you come in. Who could possibly be unsetting the 'IFF_BROADCAST' flag between those two commands ? What am i doing wrong ? If anything I would expect this to work on the VAX system since thats the main release of 4.2BSD. Other than this simple problem, the net is working quite well, and installation was quite straightforward. If you feel the answer might be generally useful, post it, else direct mail please. Thanx ========================================================== Be Company: HHB-Softron UUCP address: {ihnp4,decvax,allegra}!philabs!hhb!bob
dave@uwvax.ARPA (08/09/84)
> Working system (Pyramid): > /etc/ifconfig il0 > il0: 193.0.9.72 flags=63<UP,BROADCAST,NOTRAILERS,RUNNING> > > Non Working System (VAX): > /etc/ifconfig il0 > il0: 193.0.9.22 flags=21<UP,NOTRAILERS> Herein lies the problem. Add a line to your /etc/rc: /etc/ifconfig il0 broadcast Also, this behavior of rwho and ruptime is not acceptable. We changed them so that they send their information to a number of specifically named sites instead of the broadcast. This allows rwho/ruptime info on networks that don't have broadcast capability. It also allows hosts to send the info to sites on different networks (we now have two here). -- Dave Cohrs @ wisconsin ...!{allegra,heurikon,ihnp4,seismo,ucbvax,uwm-evax}!uwvax!dave dave@wisc-rsch.arpa
smb@ulysses.UUCP (Steven Bellovin) (08/11/84)
The real problem is that the distributed version of ifconfig is buggy, and gratuitously resets some flags. If you have a fixed version, you wouldn't have to issue it twice. (You should have seen what the buggy version did to Salkind's DEUNA driver, by resetting the RUNNING flag....)