Certaines tâches nécessitent la configuration d’interfaces tactiles + attribution de propriété . Donc, je le fais manuellement:
Sudo tuntap -u <username>
Sudo ifconfig tap0 up
Sudo ip a a 192.168.1.1/24 dev tap0
ou en utilisant
ip tuntap add dev tap0 mode tap user <username>
Comment rendre la configuration des interfaces tap permanente après les redémarrages sans ajouter ces commandes à un script shell et les ajouter au démarrage
Ce que j'ai à l’esprit, c’est de le faire /etc/network/interfaces comme suit:
iface tap1 inet static
address 192.168.1.121
netmask 255.255.255.0
pre-up /usr/sbin/tunctl -u ajn -t tap1
Mais pour une raison quelconque, cela ne fonctionne pas.
Des idées?
Pour ma vie, je ne vois pas pourquoi cette question devrait être votée à la baisse. C'est clair, correct, il a une réponse bien définie. Je l'ai voté.
Vous utilisez des utilitaires obsolètes comme tunctl, vous devriez plutôt utiliser ip . La strophe correcte pour /etc/network/interfaces est la suivante:
iface tap1 inet manual
pre-up ip tuntap add tap1 mode tap user root
pre-up ip addr add 192.168.1.121/24 dev tap1
up ip link set dev tap1 up
post-up ip route del 192.168.1.0/24 dev tap1
post-up ip route add 192.168.1.121/32 dev tap1
post-down ip link del dev tap1
Votre erreur était d'utiliser statique au lieu de manuel . La raison en est que, puisque vous essayez de donner à l’interface virtuelle une adresse dans le même sous-réseau que votre principal intermédiaire (wlan0/eth0), lorsqu’il essaie automatiquement d’ajouter un itinéraire local,
ip route add 192.168.1.0/24 dev tap1
il constate qu'une telle route existe déjà et il se plaint. Si vous utilisez manuel au lieu de statique, vous êtes autorisé à supprimer cette route, ce qui est bien sûr inutile.
En outre, vous devriez ajouter un itinéraire
ip route add 192.168.1.121/32 dev tap1
pour informer votre noyau qu'il existe une exception à la route
ip route add 192.168.1.0/24 dev eth0/wlan0
C'est tout.
Vous devrez peut-être effectuer quelques étapes supplémentaires:
55 local
254 main
253 default
0 unspec
1 rt2
#create a tap interface and make it persistent
iface tap1 inet manual
pre-up ip tuntap add tap1 mode tap user root
pre-up ip addr add 192.168.1.121/24 dev tap1
up ip link set dev tap1 up
post-up ip route del 192.168.1.0/24 dev tap1
post-up ip route add 192.168.1.121/32 dev tap1
post-down ip link del dev tap1
#configure the new routing table so that network 192.168.1.0 can be reached through the tap1 interface
post-up ip route add 192.168.1.0/24 dev tap1 src 192.168.1.121 table rt2
#set the default gateway to be 192.168.1.10
post-up ip route add default via 192.168.1.10 dev tap1 table rt2
#set rules so that traffic from and to 192.168.1.121 use the rt2 routing table
post-up ip rule add from 192.168.1.121/24 table rt2
post-up ip rule add to 192.168.1.121/24 table rt2
Sudo ifup tap1
Pour le tester:
ip route list table rt2
ip rule show