亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 怎樣根據(jù)IP判斷輸入的子網(wǎng)掩碼是否合規(guī) [打印本頁]

作者: fbt045    時(shí)間: 2014-06-19 10:48
標(biāo)題: 怎樣根據(jù)IP判斷輸入的子網(wǎng)掩碼是否合規(guī)
我的IP判斷腳本如下:
check_ip()
{
       read str
       echo $str > /tmp/tmpserverip
       echo $str | grep "^[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$" > /dev/null
       if [ $? = 1 ];then
           echo 1
       else
              {
                        a=$(cut -d. -f1 /tmp/tmpserverip)
                        b=$(cut -d. -f2 /tmp/tmpserverip)
                        c=$(cut -d. -f3 /tmp/tmpserverip)
                        d=$(cut -d. -f4 /tmp/tmpserverip)

            if [ $a -ge 255 ]||[ $a -le 0 ]||[ $b -ge 255 ]||[ $b -lt 0 ]||[ $c -ge 255 ]||[ $c -lt 0 ]||[ $d -ge 255 ]||[ $d -le 0 ];then
                 echo 1
            else
                 echo 0
            fi
                    }
       fi
}
怎樣修改成一個(gè)check_mask腳本呢?
作者: q1208c    時(shí)間: 2014-06-19 11:24
樓主的腳本可以簡化一下.

ipcalc -c "<IP Address>" 就行了.

ipcalc -m <IP Address> 會(huì)返回默認(rèn)的 netmask
  1. [q1208c@host 11:23 ~]
  2. $ ipcalc -c "121.0.23.12/26"

  3. [q1208c@host 11:23 ~]
  4. $ ipcalc -b "121.0.23.12/26"
  5. BROADCAST=121.0.23.63

  6. [q1208c@host 11:23 ~]
  7. $ ipcalc -m "121.0.23.12/26"
  8. NETMASK=255.255.255.192

  9. [q1208c@host 11:23 ~]
  10. $ ipcalc -n "121.0.23.12/26"
  11. NETWORK=121.0.23.0

  12. [q1208c@host 11:23 ~]
  13. $ ipcalc -p "121.0.23.12/26"
  14. PREFIX=26

  15. [q1208c@host 11:24 ~]
復(fù)制代碼

作者: fbt045    時(shí)間: 2014-06-19 14:07
q1208c 發(fā)表于 2014-06-19 11:24
樓主的腳本可以簡化一下.

ipcalc -c "" 就行了.

這個(gè)方法很方便哈,不過如果用戶的掩碼有可能是更細(xì)網(wǎng)段的輸入,這個(gè)就不能用默認(rèn)生成的吧?
作者: 用戶名注冊(cè)后不能更改    時(shí)間: 2014-06-19 14:07
回復(fù) 2# q1208c

太好用了,頓時(shí)覺得以前自己苦苦算半天還算錯(cuò)了,真是太蠢了……
作者: q1208c    時(shí)間: 2014-06-19 15:19
回復(fù) 3# fbt045

看我的例子里. 有個(gè) "/26" 這樣的.
   
作者: 用戶名注冊(cè)后不能更改    時(shí)間: 2014-06-19 15:39
回復(fù) 3# fbt045

或者ipcalc -x ip/prefix
或者ipcalc -x ip netmask
作者: fbt045    時(shí)間: 2014-06-19 15:51
用戶名注冊(cè)后不能更改 發(fā)表于 2014-06-19 15:39
回復(fù) 3# fbt045

或者ipcalc -x ip/prefix

兄弟,你真是全能shen啊
作者: fbt045    時(shí)間: 2014-06-19 15:52
哈,引用錯(cuò)了,你們都很牛




歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2