Subject: ARPing - what is correct IP protocol?

From: Gervais John <[email-masked]>
Date: Wed, 27 Jan 1999 10:30:17 -0500

I am using a host configured as below:

Local Target IP:		10.1.1.10
Gateway:		      10.1.0.1
Subnet Mask:		255.255.0.0

When the my host tries to send an IP packet to 10.0.0.10, the software stack
ARPs for the MAC address of 10.0.0.10 directly ( not for the gateway as I
would expect ).  But when I try to send a packet to 10.2.0.10, the stack
ARPs for the MAC address of the gateway. It appears that the software stack
thinks 10.0.x.x is on its local subnet and 10.2.x.x isn't.  My assumption is
that the stack is thinking the second byte 0 means "this" subnet.  Is this
correct IP protocol?  RFC950, show in part below, seems to indicate "yes".
Comments?

Thanks,

John Gervais, Thomson Consumer Electronics  (317)587-4227
[email-masked]

It seems an all zeros subnet value is invalid.  From RFC950 section 2.1, the
following was found:

The important part is:

         It is useful to preserve and extend the interpretation of these
         special addresses in subnetted networks.  This means the values
         of all zeros and all ones in the subnet field should not be
         assigned to actual (physical) subnets.
            In the example above, the 6-bit wide subnet field may have
            any value except 0 and 63.

Here is the extract.......

     For example, the Internet address might be interpreted as:
         <network-number><subnet-number><host-number>
      where the <network-number> field is as defined by IP [3], the
      <host-number> field is at least 1-bit wide, and the width of the
      <subnet-number> field is constant for a given network.  No further
      structure is required for the <subnet-number> or <host-number>
      fields.  If the width of the <subnet-number> field is zero, then
      the network is not subnetted (i.e., the interpretation of [3] is
      used).
      For example, on a Class B network with a 6-bit wide subnet field,
      an address would be broken down like this:
                           1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |1 0|        NETWORK            |  SUBNET   |    Host Number    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      Since the bits that identify the subnet are specified by a
      bitmask, they need not be adjacent in the address.  However, we
      recommend that the subnet bits be contiguous and located as the
      most significant bits of the local address.      Special Addresses:
         From the Assigned Numbers memo [9]:
            "In certain contexts, it is useful to have fixed addresses
            with functional significance rather than as identifiers of
            specific hosts.  When such usage is called for, the address
            zero is to be interpreted as meaning "this", as in "this
            network".  The address of all ones are to be interpreted as
            meaning "all", as in "all hosts".  For example, the address
            128.9.255.255 could be interpreted as meaning all hosts on
            the network 128.9.  Or, the address 0.0.0.37 could be
            interpreted as meaning host 37 on this network."
         It is useful to preserve and extend the interpretation of these
         special addresses in subnetted networks.  This means the values
         of all zeros and all ones in the subnet field should not be
         assigned to actual (physical) subnets.
            In the example above, the 6-bit wide subnet field may have
            any value except 0 and 63.
RFC 950                                                      August 1985
Internet Standard Subnetting Procedure
         Please note that there is no effect or new restriction on the
         addresses of hosts on non-subnetted networks.

---

From: John Curran <[email-masked]>
Date: Wed, 27 Jan 1999 11:08:18 -0500

At 10:30 AM 01/27/1999 -0500, Gervais John wrote:
>...

Introduction of CIDR results in the distinction between network
and subnet being removed (although not all host software has
caught onto this concept, leaving pockets of special treatment
for what appears to be a an all-zero subnet of classful addreses).

The Router Requirements document (RFC1812) is clear that 
classful subnet interpetation is obsolete, although I do not 
believe that Host Requirements has been updated at this time.

/John

>Baker                       Standards Track                    [Page 48]
>
>RFC 1812         Requirements for IP Version 4 Routers         June 1995
>
>
>    IP addresses are not permitted to have the value 0 or -1 for the
>    <Host-number> or <Network-prefix> fields except in the special cases
>    listed above.  This implies that each of these fields will be at
>    least two bits long.
>
>   DISCUSSION
>      Previous versions of this document also noted that subnet numbers
>      must be neither 0 nor -1, and must be at least two bits in length.
>      In a CIDR world, the subnet number is clearly an extension of the
>      network prefix and cannot be interpreted without the remainder of
>      the prefix.  This restriction of subnet numbers is therefore
>      meaningless in view of CIDR and may be safely ignored.
>
>   For further discussion of broadcast addresses, see Section [4.2.3.1].

---

From: John Curran <[email-masked]>
Date: Wed, 27 Jan 1999 11:08:18 -0500

/John

---

From: Gervais John <[email-masked]>
Date: Wed, 27 Jan 1999 13:29:25 -0500

I have been talking with my OS vendor.  But what I was looking for was
clarification of the IP protocol.  Much thanks to John Curran for directing
me to RFC1812's passage which answers my question.

-----Original Message-----
From:	Ted Lemon [SMTP:[email-masked]]
Sent:	Wednesday,January 27,1999 12:35 PM
To:	Gervais John
Subject:	Re: ARPing - what is correct IP protocol? 

Your stack is broken, and you should be talking to the vendor, not the
mail IETF mailing list.

			       _MelloN_

> -----Original Message-----
> From:	John Curran [SMTP:[email-masked]]
> Sent:	Wednesday,January 27,1999 11:08 AM
> To:	Gervais John
> Cc:	[email-masked]'
> Subject:	Re: ARPing - what is correct IP protocol?
>

---

From: Gervais John <[email-masked]>
Date: Wed, 27 Jan 1999 13:29:25 -0500

-----Original Message-----
From:	Ted Lemon [SMTP:[email-masked]]
Sent:	Wednesday,January 27,1999 12:35 PM
To:	Gervais John
Subject:	Re: ARPing - what is correct IP protocol? 

			       _MelloN_