Networking on Sigillo

DHCP
9 August 2004

On the 2.4 kernel, Sigillo connected to Tord's ADSL using DHCP, but on the 2.6 kernel it failed. I discovered dhcp was being handled by pump, a simple client, and installed dhcpcd instead. This looks like a much better package. I've not yet tested if this makes a difference with Tord's setup.

Note that "Though DHCP is best-known for assigning dynamic IP addresses, it can also assign static addresses to clients if that's what you require" -- this may mean I can set up sigillo to use dhcp at work.

dhcp in Debian: dhcpcd, dhcp3-client, dhcp-client, pump -- in that order of quality?

Update 12 August 2006: same behavior at Astrid Nicholaisen's ADSL (Tecom GW1000ST from Telenor): works with 2.4 kernel and fails with 2.6. There is some freak configuration on Sigillo that makes this fail.

I used these commands -- may be needed if DHCP looks for an authentication certificate:

ifconfig eth0 10.0.0.2 netmask 255.255.255.0 broadcast 255.255.255.255
route add default gw 10.0.0.138 (tord uses 10.0.0.1)
I'm missing something here -- Astrid's does not work reliably this way. She may have smtp server smtp.online.no (standard for telenor) and DNS as in /etc/resolv.conf.telenor.

Correction: what worked is to plug the ethernet cable from the Speedtouch 510i modem directly into Sigillo, instead of using the one from Telenor's Tecom GW1000ST. Speed and reliability is now fine.

Using multiple configurations for a single interface (source)
10 June 2004

What if you want to have a different configuration for work and home and you only have one card? The interfaces file can handle that, too. You don't have to name logical interface based on the physical interface. For example,

# Use dhcp to configure work
iface work inet dhcp

# Use a static configuration at home
iface home inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.1

The only problem is that ifup doesn't know what to do with those configs. When you want ifup now, you need to tell it what config to use. All you do is use

ifup <interface>=<config>

An example:

ifup eth0=work
ifdown eth0
ifup eth0=home

Notice that you don't have to tell ifdown what config to use. It already knows what config is being used.

Card assignment

It looks like I can control the eth-number an internet card gets assigned to by using /etc/modules.conf to define an alias, which is entered in /etc/modutils/ethernet. The alias defined include ethernet-0 as natsemi and ethernet-1 as orinoco_pci. Then, the aliases, rather than the modules, are listed in /etc/modules.

Now, I don't know if it's the aliases that matter or simply the order of the modules listed in /etc/modules. This is easy to test.

Now mine is back to eth0:

eth0 Link encap:Ethernet HWaddr 00:C0:9F:15:0F:59
inet addr:128.97.184.97 Bcast:128.97.184.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:152 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:59609 (58.2 KiB) TX bytes:0 (0.0 b)
Interrupt:5 Base address:0xf000

Note the hardware address -- 00:C0:9F:15:0F:59. This is one way you have to identify this as the natsemi card -- or you could use ethtool, which gets you this:

Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 15
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbags
Wake-on: ub
SecureOn password: 00:00:00:00:00:00
Current message level: 0x000040c5 (16581)
Link detected: yes

ethtool doesn't currently work on the wireless device.

If I define eth2 like eth0, I get this from ipconfig:

eth2 Link encap:Ethernet HWaddr FF:C0:00:00:00:00
inet addr:128.97.184.97 Bcast:128.97.184.255 Mask:255.255.255.0
UP BROADCAST RUNNING MTU:2040 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

Looks good -- you just need a cable that plugs this into the internet.

Note MAC address: FF:C0:00:00:00:00.

Ethtool doesn't work for this port.

ETH1394

dmesg

ohci1394: $Rev: 578 $ Ben Collins <bcollins@debian.org>
PCI: Enabling device 00:0c.0 (0010 -> 0012)
PCI: Found IRQ 11 for device 00:0c.0
PCI: Sharing IRQ 11 with 00:0b.0
ohci1394_0: OHCI-1394 1.1 (PCI): IRQ=[11] MMIO=[e8002800-e8002fff] Max Packet=[2048]
ether1394: $Rev: 546 $ Ben Collins <bcollins@debian.org>
ether1394: eth2: IEEE-1394 IPv4 over 1394 Ethernet (ohci1394)
ieee1394: Host added: Node[00:1023] GUID[00c09f0000054c57] [Linux OHCI-1394]
raw1394: /dev/raw1394 device initialized
video1394: Installed video1394 module
ieee1394: Host added: Node[00:1023] GUID[00c09f0000054c57] [Linux OHCI-1394]


Diagnosing the NIC

On 24 July 2005 I ran the diagnostic tools in nictools-pci, after loading the natsemi and mii modules:
# natsemi-diag
natsemi-diag.c:v2.08 2/28/2005 Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
Index #1: Found a NatSemi DP83815 adapter at 0x1c00.
 Natsemi 83815 series with station address 00:c0:9f:15:0f:59
 Transceiver setting Autonegotation advertise 10/100 Mbps half and full duplex.
 Use '-a' or '-aa' to show device registers,
     '-e' to show EEPROM contents, -ee for parsed contents,
  or '-m' or '-mm' to show MII management registers.

# natsemi-diag -e
natsemi-diag.c:v2.08 2/28/2005 Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
Index #1: Found a NatSemi DP83815 adapter at 0x1c00.
 Natsemi 83815 series with station address 00:c0:9f:15:0f:59
 Transceiver setting Autonegotation advertise 10/100 Mbps half and full duplex.
 EEPROM address length 6, 64 words.
Decoded EEPROM contents:
  PCI Subsystem IDs -- Vendor 0x152d, Device 0x2201.
  PCI timer settings -- minimum grant 11, maximum latency 52.
  Ethernet MAC Station Address 00:c0:9f:15:0f:59.
  Wake-On-LAN password 00:00:00:00:00:00.
  Transceiver setting 0x--f-: advertise 10/100 Mbps half and full duplex.
   Flow control enabled.
  EEPROM active region checksum read as aa65, vs aa65 calculated value.

# mii-diag
Using the default interface 'eth0'.
Basic registers of MII PHY #1:  3100 7849 2000 5c21 05e1 0000 0004 2001.
 Basic mode control register 0x3100: Auto-negotiation enabled.
 Basic mode status register 0x7849 ... 7849.
   Link status: not established.
   End of basic transceiver information.

Looks mainly useful for debugging.


 

 

top
Debate
Evolution
CogSci

Maintained by Francis F. Steen, Communication Studies, University of California Los Angeles


CogWeb