Page 3 of 9 FirstFirst 12345 ... LastLast
Results 31 to 45 of 127

Thread: Вопросы по скриптам на bash (shell)

  1. #31
    Тогда подскажите, плиз, как в скрипте получить IP адрес адаптера br0.

    На самом деле, мне необходимо в скрипте получить адрес сети адаптера br0 с префиксом. Т.е. например: 192.168.1.0/24

    ЗЫ: Вообще странно, мне кажется даже Олег писал об этой возможности
    Last edited by AlexeyN; 26-02-2008 at 20:52.

  2. #32
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805

    Это утверждение справедливо только для файла post-firewall
    А вообще, почитайте что нибудь про переменные sh. Довольно подробное описание sh я встретил здесь: http://www.freebsd.org/cgi/man.cgi?query=sh&format=html

  3. #33
    м.б. ifconfig поможет?
    С уважением, lex.

  4. #34
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805
    Получить ip адрес br0 можно так:
    Code:
    ifconfig br0 | awk '/inet addr/{print $2}' | awk -F: '{print $2}'
    А вот добавить к этому субнет путем интерпретации вывода ifconfig задача выполнимая, но не совсем тривиальная.

    Впрочем если добавить надо просто /24, то можно сделать так:
    Code:
    echo "`ifconfig br0 | awk '/inet addr/{print $2}' | awk -F: '{print $2}'`/24"
    P.S. А вообще, на кой хрен это надо --- совсем непонятно. Поскольку адрес br0 все равно статично задан. Почему бы его просто не прописать как есть...

    P.P.S. Нда... Там же еще последний разряд в 0 скидывать надо (а может необязательно?). Тогда можно сделать:
    Code:
    ifconfig br0 | awk '/inet addr/{print $2}' | awk -F: '{print $2}' | awk -F. '{print $1 "." $2 "." $3 ".0/24"}'
    Last edited by al37919; 26-02-2008 at 21:07.

  5. #35
    PHP Code:
    iplan=`/usr/sbin/ip -o -f inet addr show br0 | awk '{print $4;}'`

    [
    routah:init.d] echo $iplan
    192.168.1.1
    /24 

  6. #36
    Quote Originally Posted by al37919 View Post

    справедливо только для файла post-firewall
    Про него я и говорю. У меня выдало сообщение "адаптер не найден" Правда файл post-firewall я запускал вручную, но из /usr/local/sbin/. Проверю еще раз, может что накосячил. Спасибо!

    А можно ли как преобразовать адрес интерфейса в адрес сети с префиксом? Или может быть можно получить его для post-firewall каким либо другим способом? Очень не хочется прописывать его жестко. Необходимо для того, чтоб прописать POSTROUTING в nat при старте OpenVPN клиента.

    Понимаю что задача не тривиальная. Но хотелось бы настроить один раз и в случае смены айпи адресации не перенастраивать правила файреволла. Тем более, что роутер будет периодически мигрировать. Роутер будет использоваться для организации одной из точек большой РСПД. Знаю про скорость. В данной точке не критично
    Last edited by AlexeyN; 26-02-2008 at 21:14.

  7. #37
    А можно ли как преобразовать адрес интерфейса в адрес сети с префиксом?
    На 1 сообщение выше.

  8. #38
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805
    djet :thumbs up: (тема апдейтится медленнее, чем предлагаются решения )
    В общем ip в post-firewall --- $4, а вот субнет к ней --- наверное, см. на 2 поста выше.

  9. #39
    Quote Originally Posted by al37919 View Post
    В общем ip в post-firewall --- $4, а вот субнет к ней --- наверное, см. на 2 поста выше.
    Ох, знать бы еще, что всегда будет возможность использовать 24 маску. Подозреваю, что врядли

    Quote Originally Posted by djet View Post
    192.168.1.1/24
    Так в итоге будет 192.168.1.1/24 или 192.168.1.0/24 ?

  10. #40
    А нужен адрес именно сети? Тогда так:

    PHP Code:
    ip route list dev br0 scope link awk '{print $1}' 

  11. #41
    Quote Originally Posted by djet View Post
    ip route list dev br0 scope link | awk '{print $1}'
    djet проверь строчку пожалуйста.
    Наверно правильнее
    ip route list dev br0 proto kernel scope link | awk '/$4/ {print}'

    Но в любом случае в получаемой строке остается еще src 192.168.1.1

  12. #42
    Тогда уж правильнее
    PHP Code:
    ip route list dev br0 proto kernel scope link awk '{print $1};'
    192.168.1.0/24 

  13. #43
    Quote Originally Posted by AlexeyN View Post
    Правда файл post-firewall я запускал вручную, но из /usr/local/sbin/.
    Если Вы запускаете файл вручную, то, подозреваю, не передаете ему никаких параметров.

    $1, $2, и т.д. - это не "волшебные" слова, которые подставляют то, что Вам нужно, а переменные, хранящие, соответственно, первый, второй, и т.д. параметры, переданные скрипту.
    Если Вы их не указали - то они и будут пустыми.

  14. #44
    Quote Originally Posted by ABATAPA View Post
    Если Вы запускаете файл вручную, то, подозреваю, не передаете ему никаких параметров.
    Спасибо, понял свою ошибку.

    Quote Originally Posted by djet View Post
    Тогда уж правильнее
    PHP Code:
    ip route list dev br0 proto kernel scope link awk '{print $1};'
    192.168.1.0/24 
    Странно. У меня эта строчка возвращает, то же самое значение которое приходит в переменной $1. И потом почему $1? Ведь адрес внутреннего интерфейса содержится в $4

  15. #45
    Quote Originally Posted by AlexeyN View Post
    Спасибо, понял свою ошибку.



    Странно. У меня эта строчка возвращает, то же самое значение которое приходит в переменной $1. И потом почему $1? Ведь адрес внутреннего интерфейса содержится в $4
    Переменные awk и shell'a никак между собой не связаны.

Page 3 of 9 FirstFirst 12345 ... LastLast

Similar Threads

  1. FAQ: часто задаваемые вопросы
    By Oleg in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 56
    Last Post: 13-09-2016, 12:06
  2. Вопросы по работе IPTV (EMF & WMF)
    By theMIROn in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 119
    Last Post: 29-03-2015, 13:18
  3. Вопросы по работе PHP на роутере
    By Jekl in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 164
    Last Post: 21-10-2014, 12:45
  4. Wifi connect client bash script export.
    By aegisrtcw in forum WL-500gP Q&A
    Replies: 0
    Last Post: 25-04-2012, 05:36
  5. Вопросы по перепрошивке dir-320
    By gweri in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 344
    Last Post: 29-10-2011, 10:36

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •