xref: /csrg-svn/share/man/man4/nsip.4 (revision 47675)
1*47675Scael.\" Copyright (c) 1985, 1991 The Regents of the University of California.
236752Sbostic.\" All rights reserved.
324106Ssklower.\"
443581Strent.\" %sccs.include.redist.man%
524106Ssklower.\"
6*47675Scael.\"     @(#)nsip.4	1.4 (Berkeley) 03/28/91
736752Sbostic.\"
8*47675Scael.Dd
9*47675Scael.Dt NSIP 4
10*47675Scael.Os BSD 4.3
11*47675Scael.Sh NAME
12*47675Scael.Nm nsip
13*47675Scael.Nd software network interface encapsulating NS packets in IP packets
14*47675Scael.Sh SYNOPSIS
15*47675Scael.Cd options NSIP
16*47675Scael.Fd #include <netns/ns_if.h>
17*47675Scael.Sh DESCRIPTION
1824106SsklowerThe
19*47675Scael.Nm nsip
2024106Ssklowerinterface is a software mechanism which may be
21*47675Scaelused to transmit Xerox
22*47675Scael.Tn NS Ns (tm)
23*47675Scaelpackets through otherwise uncooperative
2424106Ssklowernetworks.
25*47675ScaelIt functions by prepending an
26*47675Scael.Tn IP
27*47675Scaelheader, and resubmitting the packet
28*47675Scaelthrough the
29*47675Scael.Tn UNIX
30*47675Scael.Tn IP
31*47675Scaelmachinery.
32*47675Scael.Pp
3324106SsklowerThe super-user can advise the operating system of a willing partner
34*47675Scaelby naming an
35*47675Scael.Tn IP
36*47675Scaeladdress to be associated with an
37*47675Scael.Tn NS
38*47675Scaeladdress.
3924106SsklowerPresently, only specific hosts pairs are allowed, and for each host
4024106Ssklowerpair, an artificial point-to-point interface is constructed.
41*47675ScaelAt some future date,
42*47675Scael.Tn IP
43*47675Scaelbroadcast addresses or hosts may be paired
44*47675Scaelwith
45*47675Scael.Tn NS
46*47675Scaelnetworks or hosts.
47*47675Scael.Pp
48*47675ScaelSpecifically, a socket option of
49*47675Scael.Dv SO_NSIP_ROUTE
50*47675Scaelis set on a socket
51*47675Scaelof family
52*47675Scael.Dv AF_NS ,
53*47675Scaeltype
54*47675Scael.Dv SOCK_DGRAM ,
55*47675Scaelpassing the following structure:
56*47675Scael.Bd -literal
5724106Ssklowerstruct nsip_req {
5824106Ssklower	struct sockaddr rq_ns;	/* must be ns format destination */
5924106Ssklower	struct sockaddr rq_ip;	/* must be ip format gateway */
6024106Ssklower	short rq_flags;
6124106Ssklower};
62*47675Scael.Ed
63*47675Scael.Sh DIAGNOSTICS
64*47675Scael.Bl -diag
65*47675Scael.It nsip%d: can't handle af%d.
66*47675ScaelThe interface was handed
6724106Ssklowera message with addresses formatted in an unsuitable address
6824106Ssklowerfamily; the packet was dropped.
69*47675Scael.El
70*47675Scael.Sh SEE ALSO
71*47675Scael.Xr intro 4 ,
72*47675Scael.Xr ns 4
73*47675Scael.Sh HISTORY
74*47675ScaelThe
75*47675Scael.Nm
76*47675Scaelinterface appeared in
77*47675Scael.Bx 4.3 .
78*47675Scael.Sh BUGS
7924106SsklowerIt is absurd to have a separate pseudo-device for each pt-to-pt
8024106Ssklowerlink.
81*47675ScaelThere is no way to change the
82*47675Scael.Tn IP
83*47675Scaeladdress for an
84*47675Scael.Tn NS
85*47675Scaelhost once the
8624106Ssklowerthe encapsulation interface is set up.
87*47675ScaelThe request should honor flags of
88*47675Scael.Dv RTF_GATEWAY
89*47675Scaelto indicate
90*47675Scaelremote networks, and the absence of
91*47675Scael.Dv RTF_UP
92*47675Scaelshould be a clue
9324106Ssklowerto remove that partner.
94*47675ScaelThis was intended to postpone the necessity of rewriting reverse
95*47675Scael.Tn ARP
9624106Ssklowerfor the
97*47675Scael.Xr en 4
98*47675Scaeldevice, and to allow passing
99*47675Scael.Tn XNS
100*47675Scaelpackets through an
10124106SsklowerArpanet-Milnet gateway, to facilitate testing between some co-operating
10224106Sskloweruniversities.
103