Puncte:0

Crearea de punte pe Linux folosind dispozitive TAP (Virtuallbox)

drapel cz

Crearea de punte pe Linux folosind dispozitive TAP

Buna ziua, am urmatoarea schema:

introduceți descrierea imaginii aici Pentru a putea face ping la gazdele de la distanță, separatehost1 în cazul meu, aduc dispozitivul bridge br0 care combină tap0 + eth2 pe server și trebuie să pună rețeaua locală (192.168.111.0/24) cu clientul openvpn la distanță (vpn2), dar tot nu am avut noroc, ai putea te rog sa sugerezi ce am gresit

pot da ping: vpn1 -> vpn2 vpn2 -> vpn1 vpn1 -> separatehost1 Nu pot da ping separathost1 de vpn2 (client) și invers (Destination Host Unreachable).

Server.conf

#Configurare server
proto udp
portul 1194
cheie-persiste
persist-tun
menține în viață 10 60
tls-auth /etc/openvpn/movpn/ta.key 0
client remote-cert-tls
dh /etc/openvpn/movpn/dh2048.pem
ca /etc/openvpn/movpn/ca.crt
cert /etc/openvpn/movpn/server.crt
cheie /etc/openvpn/movpn/server.key
utilizator nimeni
grup fără grup
# utilizați âgroup nogroupâ pe Debian/Ubuntu
verbul 3
demonul
log-append /var/log/openvpn.log
#client-la-client
dev tap0
server-bridge 192.168.111.101 255.255.255.0 192.168.111.128 192.168.111.200

Toată schema este creată folosind Vagrantfile + net.ipv4.ip_forward = 1.

Scenariul care apare br0 interfata:

 #!/bin/bash
 br="br0"
 tap="tap0"
 eth="eth2"
 br_ip="192.168.111.101"
 br_netmask="255.255.255.0"
 br_broadcast="192.168.111.255"
 # Creați adaptorul de robinet
 openvpn --mktun --dev $tap
 # Creați puntea și adăugați interfețe
 brctl addbr $br
 brctl addif $br $eth
 brctl addif $br $tap
 # Configurați puntea
 ifconfig $tap 0.0.0.0 promisc up
 ifconfig $eth 0.0.0.0 promisc up
 ifconfig $br $br_ip netmask $br_netmask difuzare $br_broadcast

introduceți descrierea imaginii aici

pe baza depanării mele, serverul nu trimite pachete icmp către separatehost1, nu știu de ce...

introduceți descrierea imaginii aici

root@vpn1:/etc/openvpn/movpn# ip -d link arată br0
12: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT grup implicit qlen 1000
    link/ether 08:00:27:6c:77:40 brd ff:ff:ff:ff:ff:ff promiscuitate 0 
    Bridge Forward_Delay 1500 Hello_Time 200 MAX_AGE 2000 AGEING_TIME 30000 STP_STE 0 Prioritate 32768 VLAN_FILTERING 0 VLAN_PROTOCOL 802.1Q Bridge_id 8000.8: 0: 27: 6C: 77: 40 Desemnat_root 8000.8: 0: 27: 6C: 77: 40 Root_Port 0 Root_Path_Chys 0: 27: 6C: 77: 40 Root_Port 0 Root_Path_Path 0 hello_timer    0.00 tcn_timer    0.00 topology_change_timer    0.00 gc_timer  150.00 vlan_default_pvid 1 vlan_stats_enabled 0 group_fwd_mask 0 group_address 01:80:c2:00:00:00 mcast_snooping 1 mcast_router 1 mcast_query_use_ifaddr 0 mcast_querier 0 mcast_hash_elasticity 4 mcast_hash_max 512 mcast_last_member_count 2 mcast_startup_query_count 2 mcast_last_member_interval 100 mcast_membership_interval 26000 mcast_querier_interval 25500 mcast_query_interval 12500 mcast_query_response_interval 1000 mcast_startup_query_interval 3124 mcast_stats_enabled 0 mcast_igmp_version 2 mcast_mld_version 1 nf_call_iptables 0 nf_call_ip6tables 0 nf_call_arptables_enabled 0 nf_call_arptables 0 addonsi5_gmp_models 5 euquergens_6_models 0 so_max_segs 65535 
root@vpn1:/etc/openvpn/movpn# link ip
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state modul NECUNOSCUT DEFAULT grup implicit qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT grup implicit qlen 1000
    link/ether 08:00:27:b4:26:99 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT grup implicit qlen 1000
    link/ether 08:00:27:db:97:af brd ff:ff:ff:ff:ff:ff
4: eth2: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP mode DEFAULT grup implicit qlen 1000
    link/ether 08:00:27:6c:77:40 brd ff:ff:ff:ff:ff:ff
11: tap0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP mode DEFAULT grup implicit qlen 100
    link/ether d6:df:32:8a:b0:5e brd ff:ff:ff:ff:ff:ff
12: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT grup implicit qlen 1000
    link/ether 08:00:27:6c:77:40 brd ff:ff:ff:ff:ff:ff

root@separatehosts1:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue stare UNKNOWN grup implicit qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:b4:26:99 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic eth0
       valid_lft 76182sec preferred_lft 76182sec
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:a5:4b:55 brd ff:ff:ff:ff:ff:ff
    inet 192.168.111.102/24 brd 192.168.111.255 scope global eth1
       valid_lft pentru totdeauna preferred_lft pentru totdeauna

root@vpn1:/etc/openvpn/movpn# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue stare UNKNOWN grup implicit qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:b4:26:99 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic eth0
       valid_lft 75325sec preferred_lft 75325sec
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:db:97:af brd ff:ff:ff:ff:ff:ff
    inet 192.168.33.101/24 brd 192.168.33.255 scope global eth1
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
4: eth2: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 1000
    link/ether 08:00:27:6c:77:40 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::a00:27ff:fe6c:7740/64 scope link 
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
11: tap0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 100
    link/ether d6:df:32:8a:b0:5e brd ff:ff:ff:ff:ff:ff
12: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue stare UP grup implicit qlen 1000
    link/ether 08:00:27:6c:77:40 brd ff:ff:ff:ff:ff:ff
    inet 192.168.111.101/24 brd 192.168.111.255 scope global br0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
root@vpn2:/etc/openvpn/movpn# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue stare UNKNOWN grup implicit qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:b4:26:99 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic eth0
       valid_lft 75777sec preferred_lft 75777sec
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:d8:ad:47 brd ff:ff:ff:ff:ff:ff
    inet 192.168.33.102/24 brd 192.168.33.255 scope global eth1
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
9: tap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state NECUNOSCUT grup implicit qlen 100
    link/ether 2a:2f:98:b3:34:81 brd ff:ff:ff:ff:ff:ff
    inet 192.168.111.128/24 brd 192.168.111.255 scope global tap0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
drapel in
Aș cere ieșire de la `ip a`, dar aș recomanda, de asemenea, să utilizați `tcpdump` pentru a încerca să vă dați seama unde se duce traficul și dacă „revine”
Marat Gainutdinov avatar
drapel cz
au adăugat capturi de ecran suplimentare cu ieșire __ip a__.
Nikita Kipriyanov avatar
drapel za
Să [continuăm această discuție în chat](https://chat.stackexchange.com/rooms/131343/discussion-between-nikita-kipriyanov-and-marat-gainutdinov).
Puncte:1
drapel cz

VirtualBox utilizează în mod implicit filtrarea bazată pe MAC direct în codul comutatorului virtual. Cunoaște adresa MAC a VM și nu furnizează niciun alt pachet (în afară de multicast și broadcast). Motivul este, desigur, securitatea - altfel o VM poate încerca să redirecționeze traficul etc etc.

După câteva ore, am repornit toate gazdele și traficul a început să treacă prin tunel, mi se pare că comutatorul virtual al Virtualbox a descoperit că am creat interfețe suplimentare și înainte de repornire le bloca după cererile arp de repornire și tot traficul a început să funcționeze bine: )

Sper că acest răspuns vă va economisi timp.

separatehost1 -> vpn2

root@separatehosts1:~# ping 192.168.111.128
PING 192.168.111.128 (192.168.111.128) 56(84) octeți de date.
64 de octeți de la 192.168.111.128: icmp_seq=1 ttl=64 time=2,62 ms
64 de octeți de la 192.168.111.128: icmp_seq=2 ttl=64 time=2.50 ms
64 de octeți de la 192.168.111.128: icmp_seq=3 ttl=64 time=2,42 ms
64 de octeți de la 192.168.111.128: icmp_seq=4 ttl=64 time=1,57 ms
64 de octeți de la 192.168.111.128: icmp_seq=5 ttl=64 time=2,53 ms
^C
--- 192.168.111.128 statistici ping ---
5 pachete transmise, 5 primite, 0% pierdere de pachete, timp 4258 ms
rtt min/avg/max/mdev = 1,571/2,333/2,624/0,386 ms

vpn2 -> separatehost1

root@vpn2:~# ping 192.168.111.102
PING 192.168.111.102 (192.168.111.102) 56(84) octeți de date.
64 de octeți de la 192.168.111.102: icmp_seq=1 ttl=64 time=1,21 ms
64 de octeți de la 192.168.111.102: icmp_seq=2 ttl=64 time=2.02 ms
64 de octeți de la 192.168.111.102: icmp_seq=3 ttl=64 time=2,15 ms
64 de octeți de la 192.168.111.102: icmp_seq=4 ttl=64 time=1,71 ms
64 de octeți de la 192.168.111.102: icmp_seq=5 ttl=64 time=2,63 ms
^C
--- 192.168.111.102 statistici ping ---
5 pachete transmise, 5 primite, 0% pierdere de pachete, timp 4009 ms
rtt min/avg/max/mdev = 1,214/1,946/2,634/0,474 ms
Nikita Kipriyanov avatar
drapel za
Vă rugăm să marcați soluția ca fiind acceptată
Marat Gainutdinov avatar
drapel cz
Îți poți accepta propriul răspuns mâine, bine

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.