Как маршрутизировать к шлюзу в другой подсети? [закрыто]

Да, есть способ.
Существует массив номеров строк, в которых была вызвана функция.

Определите эту функцию:

f(){ echo "${BASH_LINENO[-2]}"; }

И вызовите f в любой строке, номер которой вам нужен, например:

#!/bin/bash


f(){ echo "${BASH_LINENO[-2]}"; }

f

echo next1
f

echo next2
f

echo next 3
f

Будет напечатано:

6
next 1
9
next 2
12
next 3
15

Можно расширить, чтобы показать след вызываемые функции:

#!/bin/bash

f(){
    for ((i=${#BASH_LINENO[@]}-1;i>=0;i--)); do
    printf '<%s:%s> ' "${FUNCNAME[i]}" "${BASH_LINENO[i]}";
    done
    echo "$LINENO"
 }

SomeOtherFunction(){ echo -n "test the line numbering:  "; f; }

f

echo next 1
echo -n "    This line numbering:  "; f
SomeOtherFunction

echo next 2
echo -n "    This line numbering:  "; f
SomeOtherFunction

echo next 3
echo -n "    This line numbering:  "; f

Которые будут печатать:

$ ./script
<main:0> <f:12> 7
next 1
    This line numbering:  <main:0> <f:15> 7
test the line numbering:  <main:0> <SomeOtherFunction:16> <f:10> 7
next 2
    This line numbering:  <main:0> <f:19> 7
test the line numbering:  <main:0> <SomeOtherFunction:20> <f:10> 7
next 3
    This line numbering:  <main:0> <f:23> 7

Обратите внимание, что вывод echo "$LINENO" всегда один и тот же (7 в данном случае).

1
11.07.2018, 13:15
2 ответа

1 )Подключите компьютер напрямую к серверу, назначьте ему статический IP-адрес 192.168.x.x, войдите в систему и устраните ограничение.

2 )Создайте сетевое пространство имен на своем ПК, запустите xterm в сетевом пространстве имен. Подключите сетевое пространство имен через виртуальную пару eth -к основному пространству имен. Добавьте адреса 192.168.x.x в пару eth -. Включить переадресацию в основном пространстве имен. Добавьте статический маршрут к 192.168.x.x на вашем маршрутизаторе. Используйте sshиз сетевого пространства имен; он будет иметь исходный адрес 192.168.x.x.

(1 )наверное проще.

0
28.01.2020, 00:32

Если ваш маршрутизатор не изолирует ваши устройства, вы можете попробовать добавить псевдоним на беспроводную карту вашего компьютера.

  1. Проверьте имя беспроводного сетевого интерфейса вашего ПК (возможноwlan0):

    ip address show
    
  2. Добавьте второй IP-адрес к вашему интерфейсу:

    ip address add 192.168.0.100/16 dev wlan0
    
  3. Проверьте таблицу маршрутизации вашего компьютера:

    ip address show
    ip route show
    
  4. Попробуйте подключиться к вашему серверу по ssh. При необходимости попробуйте использовать ssh -bопцию :

    .
    ssh -b 192.168.0.100 user@server
    

Обратите внимание, что часто мне приходилось подключать оба устройства к маршрутизатору с помощью провода, даже если маршрутизатор (ошибался? )заявил, что это не было изоляцией.

0
28.01.2020, 00:32

Теги

Похожие вопросы