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