286
Sítě / Re:Divný způsob routingu IPv6
« kdy: 09. 02. 2022, 00:23:24 »
No odpovědi mě trochu pohltily. Jeden poznatek - moje ipv6 adresa je ve tvaru x...xx:I_P_:V_4_:yyyy , kde I_P:V_4 odpovídá ipv4 adrese. IPV4 adresu mám přiřazenu jednu v subnetu /24.
V krátkosti, čekal jsem, že příkaz ip neigh add proxy 2a02:xxxx:F00/124 dev en1 Udělá to co potřebuji . Že oznámí routeru, obsah ...:F00-...:F0F mi chodil na linku.
Zároveň doplňuji poznatek kolem ipv4 a pingování neexistujících adres. rozdílnost v arp. Pokud dám ping na adresu z /24 (např..3.123), tak vidím v tcpdumpu ARP dotaz "who has ...123, tell ...", ale v ipv6 nic takového. Pokud si přidám ip addr add ...3.125, tak mám druhou ipv4, arp na dotaz odpoví a jsem dostupný i na druhé . Na ipV6 žádný ekvivalent arp neprobíhá.
Zároveň si mohu přes ip addr add dát nejen libovolnou adresu /112 (128 - poslední dvojtečka), ale i /64. Nevím jestli to není pro providera bezpečnostní riziko nebo to má blbě nastavené a jestli o tom ví a i jestli to není neoprávněné použití (když evidentně tedy část /80-/112 je I_P_:V_4_ tak na mě zbyde těch /112. A pro ipv4 totéž.
Tady jsem našel:
PS: funguje neig i neighbour, ale do googlu je třeba hledat obě varianty
Takže je to že mi prostě poskytovatel neroutuje všechen provoz (což podle mého gusta by bylo /112), ale jen ten o který si řeknu (klidně i /64)
Tady je výsledek experimentu:
tabulka :
<můj-/64 rozsah> dev en1 kernel metric 256 pref medium
default via 2a02:blabla::1 dev en1 metric 1024 onlink pref medium
neigh:
fe80 dev en1 lladdr router STALE
fe80 dev en1 lladdr router FAILED
2A02:blabla::1 dev en1 lladdr router STALE
spousta fe80:270 ... STALE
-žádné depr/tent
TCPDUMP (s i odstranenim, pouzil jsem jen -v)
V krátkosti, čekal jsem, že příkaz ip neigh add proxy 2a02:xxxx:F00/124 dev en1 Udělá to co potřebuji . Že oznámí routeru, obsah ...:F00-...:F0F mi chodil na linku.
Zároveň doplňuji poznatek kolem ipv4 a pingování neexistujících adres. rozdílnost v arp. Pokud dám ping na adresu z /24 (např..3.123), tak vidím v tcpdumpu ARP dotaz "who has ...123, tell ...", ale v ipv6 nic takového. Pokud si přidám ip addr add ...3.125, tak mám druhou ipv4, arp na dotaz odpoví a jsem dostupný i na druhé . Na ipV6 žádný ekvivalent arp neprobíhá.
Zároveň si mohu přes ip addr add dát nejen libovolnou adresu /112 (128 - poslední dvojtečka), ale i /64. Nevím jestli to není pro providera bezpečnostní riziko nebo to má blbě nastavené a jestli o tom ví a i jestli to není neoprávněné použití (když evidentně tedy část /80-/112 je I_P_:V_4_ tak na mě zbyde těch /112. A pro ipv4 totéž.
Tady jsem našel:
Kód: [Vybrat]
ip -6 neigh add proxy 2001:0DB8:A::2 dev eth0
Also make sure that you have fowarding and ND proxying enabled for IPv6:
sysctl -w net.ipv6.conf.all.forwarding=1
sysctl -w net.ipv6.conf.all.proxy_ndp=1Poté chodí příchozí echo requesty na adresu uvedenou.PS: funguje neig i neighbour, ale do googlu je třeba hledat obě varianty
Takže je to že mi prostě poskytovatel neroutuje všechen provoz (což podle mého gusta by bylo /112), ale jen ten o který si řeknu (klidně i /64)
Tady je výsledek experimentu:
tabulka :
<můj-/64 rozsah> dev en1 kernel metric 256 pref medium
default via 2a02:blabla::1 dev en1 metric 1024 onlink pref medium
neigh:
fe80 dev en1 lladdr router STALE
fe80 dev en1 lladdr router FAILED
2A02:blabla::1 dev en1 lladdr router STALE
spousta fe80:270 ... STALE
-žádné depr/tent
TCPDUMP (s i odstranenim, pouzil jsem jen -v)
Kód: [Vybrat]
#PING-NIC:
#PRIDAM
ip addr add 2a02:f:c:k:0:I_P:V_4_:960/124 dev en1
IP6 (hlim 1, next-header opts (0) ) :: > ff02::16: HBH (rtalert: 0x0000) (padn) ICMP6, MCAST LIST.RPRT, 4 gr.rcrds [gaddr ff02::1:fccd:960 to_ex, 0 srcs] [gaddr ff02::1:fccd:b00 to_ex, 0 srcs] [gaddr ff02::1:fccd:a03 to_ex, 0 srcs] [gaddr ff02::1:fccd:1 to_ex, 0 srcs]
IP6 (hlim 255, next-header ICMPv6 (58) ) :: > ff02::1:fccd:960: ICMP6, neig solit. who has 2a02:f:c:k:0:I_P:V_4_:960
unknown opt (14), :
0x0000: c8b3 90a2 b4ea
IP6 (hlim 1, next-header opts (0) ) :: > ff02::16: HBH (rtalert: 0x0000) (padn) ICMP6, MCAST LIST.RPRT, 4 gr.rcrds [gaddr ff02::1:fccd:960 to_ex, 0 srcs] [gaddr ff02::1:fccd:b00 to_ex, 0 srcs] [gaddr ff02::1:fccd:a03 to_ex, 0 srcs] [gaddr ff02::1:fccd:1 to_ex, 0 srcs]
#PINGNU
IP6 (ICMPv6 (58) ) fe80::207:LL:ADDR:ROUT:R > ff02::1:fccd:960: ICMP6, neig solit. who has 2a02:f:c:k:0:I_P:V_4_:960
srcs linkaddr opt , : 00:07:ro:ut:er
IP6 (hlim 255, next-header ICMPv6 (58) ) 2a02:f:c:k:0:I_P:V_4_:960 > fe80::207:LL:ADDR:ROUT:R: ICMP6, neig adver., tgt is 2a02:f:c:k:0:I_P:V_4_:960, Flags [solicited, override]
dst linkaddr opt (2), : 00:50:ma:c_:mo:je
IP6 (ICMPv6 (58) ) 2604:PING:SRC::89:2001 > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, echo request, seq 1
IP6 (ICMPv6 (58) ) 2604:PING:SRC::89:2001 > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, echo request, seq 2
IP6 (hlim 255, next-header ICMPv6 (58) ) 2a02:f:c:k:0:I_P:V_4_:960 > ff02::1:ff00:1: ICMP6, neig solit. who has 2a02:f:c:k:1::1
srcs linkaddr opt , : 00:50:ma:c_:mo:je
IP6 (ICMPv6 (58) ) 2a02:f:c:k:1::1 > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, neig adver., tgt is 2a02:f:c:k:1::1, Flags [router, solicited, override]
dst linkaddr opt (2), : 00:05:73:a0:02:70
IP6 (ICMPv6 (58) ) 2a02:f:c:k:0:I_P:V_4_:960 > 2604:PING:SRC::89:2001: ICMP6, echo reply, seq 2
IP6 (ICMPv6 (58) ) 2604:PING:SRC::89:2001 > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, echo request, seq 3
IP6 (ICMPv6 (58) ) 2a02:f:c:k:0:I_P:V_4_:960 > 2604:PING:SRC::89:2001: ICMP6, echo reply, seq 3
# VYSLEDEK NA DRUHE STRANE: 2 of 3 received
#ODEBERU a pingnu
ip addr delIP6 (ICMPv6 (58) ) 2604:PING:SRC::89:2001 > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, echo request, seq 1
IP6 (ICMPv6 (58) ) 2a02:f:c:k:0:I_P:V_4_:960 > 2604:PING:SRC::89:2001: ICMP6, echo reply, seq 1
IP6 (hlim 1, next-header opts (0) ) :: > ff02::16: HBH (rtalert: 0x0000) (padn) ICMP6, MCAST LIST.RPRT, 1 gr.rcrds [gaddr ff02::1:fccd:960 to_in, 0 srcs]
IP6 (hlim 1, next-header opts (0) ) :: > ff02::16: HBH (rtalert: 0x0000) (padn) ICMP6, MCAST LIST.RPRT, 1 gr.rcrds [gaddr ff02::1:fccd:960 to_in, 0 srcs]
IP6 (ICMPv6 (58) ) 2604:PING:SRC::89:2001 > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, echo request, seq 2
IP6 (ICMPv6 (58) ) 2604:PING:SRC::89:2001 > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, echo request, seq 3
IP6 (ICMPv6 (58) ) fe80::207:LL:ADDR:ROUT:R > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, neig solit. who has 2a02:f:c:k:0:I_P:V_4_:960
srcs linkaddr opt , : 00:07:ro:ut:er
IP6 (ICMPv6 (58) ) fe80::207:LL:ADDR:ROUT:R > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, neig solit. who has 2a02:f:c:k:0:I_P:V_4_:960
srcs linkaddr opt , : 00:07:ro:ut:er
:~#
IP6 (ICMPv6 (58) ) fe80::207:LL:ADDR:ROUT:R > 2a02:f:c:k:0:I_P:V_4_:960: ICMP6, neig solit. who has 2a02:f:c:k:0:I_P:V_4_:960
srcs linkaddr opt , : 00:07:ro:ut:er
#dorazil 1 z 3
# JESTE pingnu jednou
#TED UZ NIC nechodi
:~#
Snad to k něčemu bude
ani stavový pokud vím)