GNU/Linux >> Tutoriels Linux >  >> Linux

iptables :que signifie exactement --src-type LOCAL ?

Je crois que la réponse selon laquelle addr-type LOCAL signifie que le bouclage est fausse, car ce n'est qu'une réponse partielle et est extrêmement trompeuse. LOCAL signifie TOUTE IP attribuée sur l'une des interfaces de l'hôte, y compris le bouclage. Si vous dites que LOCAL est simplement 127.0.0.0/8 (comme sasanet l'a indiqué), alors vous le limiterez à l'interface de bouclage, ce qui est tout à fait faux.

De plus, l'IP peut même être routable et publique. Pour l'hôte, cela n'a pas d'importance, car de son point de vue, IP va faire référence à l'hôte lui-même. Si vous effectuez une boucle ou un ping vers l'adresse IP publique attribuée à l'une de ses interfaces, il n'enverra évidemment pas le paquet, il l'acheminera localement.exemple :

adresse ip afficher dev eth0 :

 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
    link/ether 0a:e7:8b:89:d5:f4 brd ff:ff:ff:ff:ff:ff
    inet 172.31.20.254/20 brd 172.31.31.255 scope global dynamic eth0
       valid_lft 3110sec preferred_lft 3110sec

ip route show table local :

local 172.31.20.254 dev eth0 proto kernel scope host src 172.31.20.254

(comme déjà indiqué, peu importe si l'adresse IP est privée ou publique, tant qu'elle est attribuée à l'interface réseau)


Très bonne explication ici :http://security.maruhn.com/iptables-tutorial/x6330.html

Une autre discussion à ce sujet :http://www.linuxquestions.org/questions/linux-networking-3/wtf-addrtype-in-iptables-manpage-746659/


La terminologie "route locale" signifie que les paquets seront livrés "localement" à votre hôte, car la destination est attribuée à l'une des interfaces de votre hôte. Ce n'est pas signifie seulement localhost , comme dans les adresses de bouclage (ni 169.254/16 comme dans les adresses "link-local").

Linux utilise le protocole Netlink pour envoyer des messages entre l'espace noyau et l'espace utilisateur - l'une des familles Netlink est NETLINK_ROUTE , qui peut être utilisé pour recevoir des mises à jour de routage, modifier les adresses d'interface, etc . Par exemple, la commande ip-route de iproute2 utilise ceci.

En regardant le addrtype code source d'iptables, vous verrez des références à linux/rtnetlink.h , qui définit RTN_LOCAL comme type de message. Le rtnetlink(7) la page de manuel décrit RTN_LOCAL comme :

rtm_type          Route type
───────────────────────────────────────────────────────────
RTN_LOCAL         a local interface route

Rien de tout cela ne semble vraiment clair lorsque vous lisez à ce sujet, et certaines des meilleures références que je peux trouver sont des sources Internet diverses, il est donc compréhensible qu'il y ait confusion.


Linux
  1. Que signifie « rm est haché » ?

  2. Que signifie cet avertissement ?

  3. Que signifie rc dans les fichiers dot

  4. Que fait si [[ $ ? -ne 0 ]] ; signifie en .ksh

  5. Que signifie un iptables vide ?

Que signifie chmod 777

Que signifie "-" (double tiret) ?

Qu'est-ce que cela signifie d'être "compatible sh" ?

Pas de variable DISPLAY X11 - qu'est-ce que cela signifie ?

Que signifie la capacité ep ?

Que signifie %st en haut ?