Puncte:0

utilizați ppp pentru Internet pentru netns

drapel jp

Utilizarea de

ip r adăugați 0.0.0.0 prin 172.20.10.10 src 10.0.100.10

A PRIMIT:

Eroare: adresă prefsrc nevalidă

Cum să remediez asta?

Poartă: netns (gazdă) => ppp0 => Internet prin ppp0

Configurația mea:

/home# ip netns
ns2
ns1 (id: 0) <<<<<<<<<<<<<<<<<<

/home# ip netns exec ns1 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
    inet6 ::1/128 scope host
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
2: ip_vti0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN grup implicit qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
15: virt1@if14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP grup implicit qlen 1000
    link/ether 02:e6:f6:3a:19:2f brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 10.0.100.10/24 scope global virt1 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet6 fe80::e6:f6ff:fe3a:192f/64 scope link
       valid_lft pentru totdeauna preferred_lft pentru totdeauna

/home# ip netns exec ns1 ip r
implicit prin 10.0.100.1 dev virt1
10.0.100.0/24 dev virt1 proto kernel scope link src 10.0.100.10

/home# 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
    inet6 ::1/128 scope host
       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 11:22:33:44:31:34 brd ff:ff:ff:ff:ff:ff
    inet 1.2.3.4/20 brd 1.2.3.255 scope global eth0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet 10.10.0.8/16 brd 10.10.255.255 scope global eth0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet6 1111::2222:3333:4444:5555/64 scope link
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
5: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1450 qdisc fq_codel state NECUNOSCUT grup implicit qlen 3
    link/ppp
    inet 172.20.10.1 peer 172.20.10.10/32 domeniu global ppp0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
14: virt-h@if15: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue stare UP grup implicit qlen 1000
    link/ether f2:7e:68:40:ff:13 brd ff:ff:ff:ff:ff:ff link-netns ns1
    inet 10.0.100.1/24 scope global virt-h <<<<<<<<<<<<<
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet6 fe80::f07e:68ff:fe40:ff13/64 scope link
       valid_lft pentru totdeauna preferred_lft pentru totdeauna

netns : virt1 <> virt-h

/home# ip r
implicit prin 1.2.3.4 dev eth0 proto static
10.0.100.0/24 dev virt-h proto kernel scope link src 10.0.100.1
1.2.3.0/20 dev eth0 proto kernel scope link src 1.2.3.4
172.20.10.10 dev ppp0 proto kernel scope link src 172.20.10.1

Redirecționarea este activată. netns este setat așa cum este scris aici: https://blogs.igalia.com/dpino/2016/04/10/network-namespaces/

de asemenea:

/home# ip netns exec ns1 ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) octeți de date.
64 de octeți din 8.8.8.8: icmp_seq=1 ttl=117 timp=2,39 ms
64 de octeți din 8.8.8.8: icmp_seq=2 ttl=117 timp=1,52 ms

/home# ip netns exec ns1 ping 172.20.10.1
PING 172.20.10.1 (172.20.10.1) 56(84) octeți de date.
64 de octeți din 172.20.10.1: icmp_seq=1 ttl=64 time=0.071 ms
64 de octeți din 172.20.10.1: icmp_seq=2 ttl=64 time=0,118 ms

UPD 1: această rută ar trebui să fie setată pe gazdă, dar pentru comentator, aceasta dă și eroare (așa cum este scris în De ce „Nexthop are gateway invalid” când pare a fi definit?):

/home# ip netns exec ns1 ip r adauga implicit prin 172.20.10.10 src 10.0.100.10
Eroare: Nexthop are un gateway nevalid.
Michael Hampton avatar
drapel cz
Nu l-ai rulat în ns1, desigur.
Master avatar
drapel jp
adăugat upd 1. Acest lucru ar trebui făcut în netns ns1, deoarece ar trebui să fie direcționat pe gazdă, ns1 nu vede ppp0, dar poate se poate face în acest fel?
Michael Hampton avatar
drapel cz
Nu puteți seta ruta implicită către peer-ul PPP la distanță până când legătura PPP este activată!
Master avatar
drapel jp
`/home# ip link setează ppp0 jos /home# ip r adăugați 0.0.0.0 prin 172.20.10.10 src 10.0.100.10 Eroare: Nexthop are gateway nevalid`
Puncte:0
drapel jp

Solutia este:
0.0.0.0 => 0.0.0.0/0

Dar sarcina nu este rezolvată, soluția completă este:

  1. adauga regula la /etc/iproute2/rt_tables cu index nou
  2. regulă ip adăugați din tabelul 10.0.100.0/24 ns1
  3. ruta ip adăugați 0.0.0.0/0 prin tabelul 172.20.10.10 ns1

src nu trebuie să fie setat, deoarece regula implicită funcționează pe toate interfețele de rețea locală.

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.