SRT(4) | Device Drivers Manual | SRT(4)

# NAME

`srt` —
source-routing network interface

# SYNOPSIS

`pseudo-device srt`

# DESCRIPTION

The `srt` interface is a software interface that implements source-address-based routing. Packets are directed to the `srt` interface using normal routing decision process. Packets queued for delivery are then processed according to the rules established for the interface using the srtconfig(1) utility.

To use an `srt` device, the administrator must first create the interface. This can be done by using the ifconfig(8) `create` command. An open(2) call on /dev/srt N will also create a network interface with a unit number the same as the minor device number of that device if the interface doesn't exist yet.

To be useful, the `srt` interface needs to be configured using srtconfig(1) which uses the associated `srt` character device /dev/srt#.

The network interfaces should be named srt 0, srt 1, etc. The `srt` interface supports only the open(2), close(2), and ioctl(2) operations; other operations such as read(2) and write(2) are not supported.

All standard network interface ioctl(2) calls are supported by the `srt` interface. In addition, the following ioctl(2) calls (defined in ⟨net/if_srt.h⟩) are supported on the `srt` character device:

`SRT_GETNRT`
  The argument is a pointer to an integer, in which the number of entries in the device's routing table is returned.
`SRT_GETRT`
  The argument is the address of a struct srt_rt. The routing table entry specified by the “inx” member is returned.
`SRT_SETRT`
  The argument is the address of a struct srt_rt. The routing entry is placed into the device's routing table at the index specified by the “inx” member.
`SRT_DELRT`
  The argument is the address of a struct srt_rt. The routing entry specified by the “inx” member is deleted from the device's routing table. (Any entries in the device's routing table with higher index values are renumbered.)
`SRT_SFLAGS`
  The argument is a pointer to an integer containing any of the following flags to be set:
  `SSF_MTULOCK`
    If set, do not automatically update the interface's MTU.
`SRT_GFLAGS`
  The argument is a pointer to an integer in which the current flags are returned.
`SRT_SGFLAGS`
  This call updates the flags in the same manner as `SRT_SFLAGS`. The original flags are returned in the integer pointed to by the argument.
`SRT_DEBUG`
  Currently this is a no-op.

# SEE ALSO

srtconfig(1), inet(4), intro(4)

# HISTORY

The `srt` device was added in NetBSD 5.0 by der Mouse <mouse@NetBSD.org>. This manual page was prepared by Paul Goyette <pgoyette@NetBSD.org>.

March 27, 2019 | NetBSD 9.4