NETCONFIG(5) File Formats Manual NETCONFIG(5)

netconfig — پایگاه داده پیکربندی شبکه

/etc/netconfig

پرونده‌ی netconfig فهرستی از “نام‌های انتقال” را تعریف می‌کند و معناشناسی و پروتکل آن‌ها را شرح می‌دهد. در FreeBSD ، این پرونده فقط توسط کد کتابخانهٔ RPC استفاده می‌شود.

ورودی‌ها دارای قالب زیر هستند:

network_id semantics flags family protoname device libraries

ورودی‌ها از فیلدهای زیر تشکیل شده‌اند:

network_id
نام انتقال شرح‌داده‌شده.
semantics
معناشناسی انتقال را شرح می‌دهد. این مقدار می‌تواند یکی از موارد زیر باشد:
انتقال بدون اتصال.
انتقال مبتنی بر اتصال.
انتقال مبتنی بر اتصال و مرتب‌شده.
یک اتصال خام.
flags
این فیلد یا خالی است (که با “-” مشخص می‌شود)، یا حاوی یک “v” است، به این معنی که برای تابع getnetconfig(3) قابل مشاهده است.
family
خانوادهٔ پروتکل لایه انتقال. در حال حاضر می‌تواند یکی از موارد زیر باشد:
خانوادهٔ پروتکل‌های IPv6 (PF_INET6).
خانوادهٔ پروتکل‌های IPv4 (PF_INET).
خانوادهٔ پروتکل PF_LOCAL.
protoname
نام پروتکل استفاده‌شده برای این انتقال. در حال حاضر می‌تواند udp, یا خالی باشد.
device
این فیلد در FreeBSD همیشه خالی است.
libraries
این فیلد در FreeBSD همیشه خالی است.

ترتیب ورودی‌ها در این پرونده مشخص می‌کند که در صورت تطابق با یک نوع شبکهٔ معین، کدام انتقال توسط کد کتابخانهٔ RPC ترجیح داده خواهد شد. برای نمونه، اگر یک پروندهٔ نمونهٔ پیکربندی شبکه به این صورت باشد:

udp6       tpi_clts      v     inet6    udp     -       -
tcp6       tpi_cots_ord  v     inet6    tcp     -       -
udp        tpi_clts      v     inet     udp     -       -
tcp        tpi_cots_ord  v     inet     tcp     -       -
rawip      tpi_raw       -     inet      -      -       -
local      tpi_cots_ord  -     loopback  -      -       -

در این صورت، استفاده از نوع شبکهٔ udp در فراخوانی‌های تابع کتابخانهٔ RPC (به rpc(3) مراجعه کنید) باعث می‌شود که کد ابتدا و سپس udp را بیازماید.

تابع getnetconfig(3) و توابع مرتبط با آن، این پرونده را تجزیه کرده و ساختارهایی با قالب زیر را بازمی‌گردانند:

struct netconfig {
    char *nc_netid;              /* شناسه شبکه */
    unsigned long nc_semantics;  /* معناشناسی (به زیر مراجعه کنید) */
    unsigned long nc_flag;       /* پرچم‌ها (به زیر مراجعه کنید) */
    char *nc_protofmly;          /* خانواده پروتکل */
    char *nc_proto;              /* نام پروتکل */
    char *nc_device;             /* نام مسیر دستگاه شبکه (استفاده‌نشده) */
    unsigned long nc_nlookups;   /* تعداد کتابخانه‌های جستجو (استفاده‌نشده) */
    char **nc_lookups;           /* نام‌های کتابخانه‌ها (استفاده‌نشده) */
    unsigned long nc_unused[9];  /* رزرو شده */
};

/etc/netconfig
 

getnetconfig(3), getnetpath(3)

November 17, 2000 Linux 6.12.107+deb13-amd64