Subject: Re: Futher clarification needed-- Un-numbered point to point. dou bt

From: "Naidu, Venkata" <[email-masked]>
Date: Thu, 6 Mar 2003 16:05:26 -0500

Kamatchi,

-> IP header with
-> source as 192.168.12.1 and destination as Multicast address 224.0.0.5.
-> Case 1:
-> 8) IP will look into the route table to send the packet,
-> obviously it could
-> not find anything match for this detination, then either it
-> may discard or
-> just forward the packet to defualt destination (or gateway).
-> In our case it
-> is more probably the Lan interface. So in this case there is
-> no chance of
-> OSPF packet to be sent over the Un-numbered point to point interface.

  No need to look into the (unicast) route table for multicast
  addresses. The destination address in the IP packet is 224.0.0.5
  (which is link local multicast). Multicasting is specific to per
  interface - (I,G). So, if you know the outgoing interface, then
  enable multicasting on that interface and send the packet out.

  To support unnumbered interfaces, socket APIs (in most of the
  operating systems) are not sufficient. Richard Stevens writes in
  "UNIX Network Programming - Networking APIs: Sockets and XTI",
  Volume 1, Second Edition, Page 497:

    . . .
    When the interface on which to join is not specified, Berkeley-
    derived kernels look up the multicast address in the normal IP
    routing table and use the resulting interface (p. 357 of TCPv2).
    Some systems install a route for all multicast addresses (that
    is, a route with a destination of 224.0.0.0/8 for IPv4) upon
    initialization to handle this scenario.

    The change was made with IPv6 to use an interface index to
    specify the interface, instead of the local unicast address
    that is used with IPv4, to allow joins on unnumbered interfaces
    and tunnel endpoints. This is why interface name and index
    functions that we described in Section 17.6 were introduced
    with RFC2133 ...
    ...

  With my knowledge in BSD & Linux OS, I strongly suggest you
  to enhance the "bind"ing to specify interface index along with
  IP address (in other words, socket binds to the interface
  directly - provided you use socket per interface). If you
  support shared sockets ('m' sockets per 'n' interfaces with
  any to any connectivity) then you got to do additional work.

-> Case 2: If the above problem is because of using RAW socket,
-> and will it be
-> solved, if OSPF explicitly specifies the interface Name/index
-> through which
-> the OSPF packet need to delivered, then IP will deliver it
-> in the right
-> interface??

  Yes. Explained above. Remember, you can use some of the
  socket options (if I remember correctly, ROUTETOIF, SO_DONTROUTE
  etc socket options) to force the packet out to an interface
  (but I think those options sets the TTL to 1 - check out).

-> Clarification 2: My other question is: do i need to specify
-> the neighbor
-> (other end of the interface) IP address, when i configure
-> the Numbered point
-> to point for OSPF??

  Not necessary. It is the trade-off I observed. When you provide
  neighbor address in the interface configuration itself then you
  can immediately add (a specific) route to reach the neighbor
  to your route table. If not, the only way you can learn the
  reachability to the neighbor address is when the Layer 3
  routing protocol converges.

  I would like to clear some of the historical doubts w.r.t
  unnumbered interfaces (I am lazy to write a draft). The way
  you configure L2/L3 interfaces dictates you on how you
  add/delete/modify delete routes from routing table. Layer 3
  Routing protocols tell us the "prefix (destination) to
  nexthop (gateway)" resolution. Operating system performs the
  "gateway -> outgoing interface" resolution. In the case of
  unnumbered, Layer 3 protocol must provide the local interface
  index when resolving prefixes so that operating system can
  find the outgoing interface without any gateway address (just
  because there is no gateway address for unnumbered links).

  Let me know if something is not clear.

Venkata.

---

From: kamatchi soundaram <[email-masked]>
Date: Fri, 7 Mar 2003 11:02:40 -0800

Hi Venkata,

 Thanks for ur inputs. But, would u think using a dedicated socket for each
interface is advisable?

 Especially in my environment, i do have 63 un-numbred pt-to-pt interfaces
and only one Lan interface. And i do have only one valid global IP address
that too for the LAN.

 If there is any other method to solve this problem, it would be
appreciable.

Btw: Ofcourse, the other method that would think is, having a queue and
event communication between IP and OSPF. But it needs much modification in
my stack especially at IP point of view...

thanks in advance,
GKS.

----- Original Message -----
From: "Naidu, Venkata" <[email-masked]>
To: <[email-masked]>
Sent: Thursday, March 06, 2003 1:05 PM
Subject: Re: Futher clarification needed-- Un-numbered point to point. dou
bt