Saya tidak dapat melihat, seumur hidup saya, mengapa pertanyaan ini harus ditolak. Jelas, benar, ia memiliki jawaban yang terdefinisi dengan baik. Saya telah memilihnya.
Anda menggunakan utilitas usang seperti tunctl, Anda harus menggunakan ip alih-alih. Stanza yang benar untuk /etc/network/interfaces adalah:
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
Kesalahan Anda adalah menggunakan statis bukan manual . Alasannya adalah, karena Anda mencoba memberikan alamat pada antarmuka virtual di subnet yang sama dengan antarmuka utama Anda (wlan0/eth0), ketika mencoba menambahkan rute lokal secara otomatis,
ip route add 192.168.1.0/24 dev tap1
ia menemukan bahwa rute seperti itu sudah ada, dan ia mengeluh. Jika Anda menggunakan manual alih-alih statis, Anda diperbolehkan menghapus rute ini, yang tentu saja tidak berguna.
Juga, Anda harus menambahkan rute
ip route add 192.168.1.121/32 dev tap1
untuk memberi tahu kernel Anda bahwa ada pengecualian untuk rute
ip route add 192.168.1.0/24 dev eth0/wlan0
Itu saja.