Книга: UNIX: разработка сетевых приложений

17.9. Операции с таблицей маршрутизации

17.9. Операции с таблицей маршрутизации

Для работы с таблицей маршрутизации предназначены два вызова функции ioctl. Эти два вызова требуют, чтобы третий аргумент функции ioctl был указателем на структуру rtentry, которая определяется в заголовочном файле <net/route.h>. Обычно эти вызовы исходят от программы route. Их может делать только привилегированный пользователь. При наличии маршрутизирующих сокетов (глава 18) для выполнения этих запросов используются именно они, а не функция ioctl.

SIOCADDRT. Добавить запись в таблицу маршрутизации.

SIOCDELRT. Удалить запись из таблицы маршрутизации.

Нет способа с помощью функции ioctl перечислить все записи таблицы маршрутизации. Эту операцию обычно выполняет программа netstat с флагом -r. Программа получает таблицу маршрутизации, считывая память ядра (/dev/kmem). Как и в случае с просмотром кэша ARP, в разделе 18.4 мы увидим более простой (и предпочтительный) способ, предоставляемый функцией sysctl.

Оглавление книги


Генерация: 1.233. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз