IP 라우팅: 호스트에 대한 경로가 없습니다.

IP 라우팅: 호스트에 대한 경로가 없습니다.

간단히 말해서 두 개의 inet 장치가 있습니다: enp0s3enp0s9.

enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:f3:bf:35 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3
       valid_lft 82336sec preferred_lft 82336sec
    inet6 fe80::67c3:35fd:6d5c:19f8/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
enp0s9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:13:5d:97 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.240/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s9
       valid_lft 2998sec preferred_lft 2998sec
    inet6 fe80::9a68:d4d0:6bf7:485d/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

액세스해야 하는 일부 서비스는 10.49.0.0/16프록시(10.49.1.1:8080)를 통해서만 액세스할 수 있습니다. enp0s3이 범위는 inet 장치를 사용하여 액세스할 수 있습니다 .

다음과 같이:

   ~ ping 10.49.99.166 -I enp0s3
PING 10.49.99.166 (10.49.99.166) from 10.0.2.15 enp0s3: 56(84) bytes of data.
64 bytes from 10.49.99.166: icmp_seq=1 ttl=250 time=15.3 ms
64 bytes from 10.49.99.166: icmp_seq=2 ttl=250 time=14.1 ms
64 bytes from 10.49.99.166: icmp_seq=3 ttl=250 time=11.8 ms
^C
--- 10.49.99.166 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2008ms
rtt min/avg/max/mdev = 11.789/13.725/15.287/1.452 ms
   ~ ping 10.49.99.166 -I enp0s9
PING 10.49.99.166 (10.49.99.166) from 192.168.1.240 enp0s9: 56(84) bytes of data.
^C
--- 10.49.99.166 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6093ms
   ~

내가 얻고 싶은 것은 inet 장치로 전송된 모든 것 10.49.0.0/16입니다 enp0s3.

다음 명령을 사용하여 이 경로를 추가해 보았습니다.

sudo ip route add 10.49.0.0/16 via 10.0.2.15 dev enp0s3

그래서,

   ~ ip route show
default via 192.168.1.1 dev enp0s9 proto dhcp src 192.168.1.240 metric 100
default via 10.0.2.2 dev enp0s3 proto dhcp src 10.0.2.15 metric 20101
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 101
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-34c76a82552a proto kernel scope link src 172.18.0.1 linkdown
192.168.1.0/24 dev enp0s9 proto kernel scope link src 192.168.1.240 metric 100

그 후 규칙을 테스트했습니다.

   ~ ip route get 10.49.99.166
10.49.99.166 dev enp0s3 src 10.0.2.15 uid 1000
    cache

그러나 원하는 서비스에 액세스하려고 하면 항상 액세스할 수 없습니다.라는 메시지가 나타납니다.

   ~ oc login --token=... --server=https://domain:6443
error: dial tcp 10.49.99.166:6443: connect: no route to host - verify you have provided the correct host and port and that the server is currently running.

   ~ telnet api.ocpdes.t-systems.es 6443
Trying 10.49.99.166...
telnet: Unable to connect to remote host: No route to host

어떤 아이디어가 있나요?

답변1

sudo ip 경로 10.0.2.15 dev enp0s3을 통해 10.49.0.0/16 추가

10.0.2.15는 enp0s3과 연결된 IP 주소인 것으로 보입니다. 패킷을 전달할 수 있는 라우터 주소를 10.0.2.0/24에 제공해야 합니다. 아마도 10.0.2.2일 것입니다. 하지만 네트워크를 관리하는 사람에게 문의하세요.

NB 단순히 경로를 변경/추가하는 것만으로는 프록시 뒤의 서비스에 액세스할 수 없습니다.

참고: 현재 2개의 기본 경로가 설정되어 있습니다. 측정 항목이 다르기 때문에 괜찮습니다. 하지만 이로 인해 나중에 문제가 발생할 수 있습니다.

관련 정보