libnl-3.10.0

Introduksjon til libnl

libnl pakken er en samling av biblioteker som gir APIer til netlink protokollbaserte Linux kjernegrensesnitt.

Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.

Pakkeinformasjon

Valgfrie Nedlastinger

Installasjon av libnl

Installer libnl ved å kjøre følgende kommandoer:

./configure --prefix=/usr     \
            --sysconfdir=/etc \
            --disable-static  &&
make
[Note]

Note

Hvis make kommandoen ble utført med flere parallelle jobber aktivert, kan det forstyrre terminalmodusen og forårsake noen morsomme visuelle effekter. I I verste fall kan dette problemet føre til at tastaturindataer ikke vises på skjermen i det hele tatt (men du kan fortsatt kjøre en hvilken som helst kommando hvis du kan skrive det riktig). Kjør reset å fikse et slikt problem.

Hvis du ønsker å kjøre testene, sjekk at følgende alternativer er aktivert i kjernekonfigurasjonen og kompilerer kjernen på nytt hvis nødvendig. Noen av dem er kanskje ikke strengt nødvendig, men de skal støtte en fullstendig testdekning.

General setup --->
  -*- Namespaces support --->                                       [NAMESPACES]
    [*] User namespace                                                 [USER_NS]
    [*] Network namespace                                               [NET_NS]

[*] Networking support --->                                                [NET]
  Networking options --->
    [*]   TCP/IP networking                                               [INET]
    [*]     IP: advanced router                             [IP_ADVANCED_ROUTER]
    [*]       IP: policy routing                            [IP_MULTIPLE_TABLES]
    <*/M>   IP: tunneling                                             [NET_IPIP]
    <*/M>   IP: GRE demultiplexer                              [NET_IPGRE_DEMUX]
    <*/M>   IP: GRE tunnels over IP                                  [NET_IPGRE]
    <*/M>   Virtual (secure) IP: tunneling                           [NET_IPVTI]
    <*>     The IPv6 protocol --->                                        [IPV6]
      <*/M>   IPv6: IPv6-in-IPv4 tunnel (SIT driver)                  [IPV6_SIT]
      <*/M>   IPv6: IP-in-IPv6 tunnel (RFC2473)                    [IPV6_TUNNEL]
      [*]     IPv6: Multiple Routing Tables               [IPV6_MULTIPLE_TABLES]
    [*]   Network packet filtering framework (Netfilter) --->        [NETFILTER]
      Core Netfilter Configuration --->
        <*/M> Netfilter nf_tables support                            [NF_TABLES]
        [*]     Netfilter nf_tables netdev tables support     [NF_TABLES_NETDEV]
        {*/M}   Netfilter packet duplication support             [NF_DUP_NETDEV]
        <*/M>   Netfilter nf_tables netdev packet forwarding support
                                                           ...  [NFT_FWD_NETDEV]
    <*/M> 802.1d Ethernet Bridging                                      [BRIDGE]
    <*/M> 802.1Q/802.1ad VLAN Support                               [VLAN_8021Q]
    -*-   L3 Master device support                           [NET_L3_MASTER_DEV]

Device Drivers --->
  [*] Network device support --->                                   [NETDEVICES]
    [*]   Network core driver support                                 [NET_CORE]
    <*/M>   Bonding driver support                                     [BONDING]
    <*/M>   Dummy net driver support                                     [DUMMY]
    <*/M>   Intermediate Functional Block support                          [IFB]
    <*/M>   MAC-VLAN support                                           [MACVLAN]
    <*/M>     MAC-VLAN based tap driver                                [MACVTAP]
    <*/M>   IP-VLAN support                                             [IPVLAN]
    <*/M>   Virtual eXtensible Local Area Network (VXLAN)                [VXLAN]
    <*/M>   IEEE 802.1AE MAC-level encryption (MACsec)                  [MACSEC]
    <*/M>   Virtual ethernet pair device                                  [VETH]
    <*/M>   Virtual Routing and Forwarding (Lite)                      [NET_VRF]

For å teste resultatene, utsted: make check.

Nå, som root bruker:

make install

Hvis du ønsker å installere API dokumentasjonen, som root bruker:

mkdir -vp /usr/share/doc/libnl-3.10.0 &&
tar -xf ../libnl-doc-3.10.0.tar.gz --strip-components=1 --no-same-owner \
    -C  /usr/share/doc/libnl-3.10.0

Parameterforklaringer

--disable-static: Denne bryteren forhindrer installasjon av statiske versjoner av bibliotekene.

--disable-cli: Bruk denne parameteren hvis du ikke ønsker å installere cli verktøy levert av pakken.

Innhold

Installerte Programmer: genl-ctrl-list, idiag-socket-details, nl-class-add, nl-class-delete, nl-classid-lookup, nl-class-list, nl-cls-add, nl-cls-delete, nl-cls-list, nl-link-list, nl-pktloc-lookup, nl-qdisc-add, nl-qdisc-delete, nl-qdisc-list, og 48 andre hjelpeprogrammer med nl- og nf- prefikser
Installerte Biblioteker: libnl-3.so, libnl-cli-3.so, libnl-genl-3.so, libnl-idiag-3.so, libnl-nf-3.so, libnl-route-3.so, libnl-xfrm-3.so, og cli moduler under /usr/lib/libnl/cli treet
Installerte Mapper: /etc/libnl, /usr/include/libnl3, /usr/lib/libnl, og /usr/share/doc/libnl-3.10.0

Korte Beskrivelser

genl-ctrl-list

spør den generiske Netlink kontrolleren i kjernen og skriver ut en liste over alle registrerte generiske Netlink familier inkludert versjonen av grensesnittet som er registrert

nl-class-add

legger til, oppdaterer eller erstatter trafikkklasser

nl-class-delete

sletter Trafikkklasser

nl-classid-lookup

brukes til å løse qdisc/class navn til classid verdier og vice versa

nl-class-list

lister opp Trafikkklasser

nl-cls-add

legger til en klassifiserer

nl-cls-delete

sletter en klassifiserer

nl-cls-list

lister klassifiserere

nl-link-list

dumper lenkeattributter

nl-pktloc-lookup

tillater oppslag av pakkeplasseringsdefinisjoner

nl-qdisc-add

legger til kødisipliner (qdiscs) i kjernen

nl-qdisc-delete

fjerner kødisipliner (qdiscs) i kjernen

nl-qdisc-list

lister kødisipliner (qdiscs) i kjernen

libnl*-3.so

Disse bibliotekene inneholder API funksjoner som brukes for å få tilgang til Netlink grensesnitt i Linux kjernen