ros winbox api 应用

这篇文章由 在 星期五, 18 二月, 2011 发表。

winbox api VB.net 类库:cls_Mikrotik.vb

代码:

Dim mk = New Mikrotik("192.168.0.1")
Dim strUsername As String, strGrid() As String
If Not mk.Login("admin", "Mikrotik_hhsoft") Then
mk.Close()
Return
End If

mk.Send("/ppp/active/print", True)
For Each row In mk.Read()
If InStr(row, "!done") = 0 Then
strGrid = Split(row, "=")
Console.WriteLine(strGrid(4) & vbTab & vbTab & strGrid(12))
End If
Next

返回的数据包:

!re=.id=*139=name=malidan=service=pppoe=caller-id=00:11:43:57:B9:0F=address=172.16.0.108=uptime=00:22:14=encoding==session-id=2167406760=limit-bytes-in=0=limit-bytes-out=0=radius=true
!re=.id=*13A=name=zhaoliang=service=pppoe=caller-id=00:E0:4D:A5:B2:5E=address=172.16.0.107=uptime=00:13:41=encoding==session-id=2167406761=limit-bytes-in=0=limit-bytes-out=0=radius=true
!done


12 Responses to “ros winbox api 应用”

  1. ROS 的SDK 在哪里有下载

  2. 小狼哥,请问用ROS的API踢人的命令是什么?

    我用
    /ppp/active/remove
    =name=xxxx
    这样踢不掉,提示参数有误,多谢 !!!

    • 应该是包格式不正确,你用什么语言,把源码贴上来看看。

    • sorry,我用我的代码试了一下,也不行,但是我用=.id=参数可以。
      等我继续研究下。
      你可以参考下这个帖子:http://forum.mikrotik.com/viewtopic.php?f=9&t=38834

    • 贴上我的代码
      Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
      Dim mk = New Mikrotik(“192.168.0.1”)
      Dim strGrid() As String, strCLI() As String
      Dim iCmds As Integer
      If Not mk.Login(“admin”, “×××”) Then
      mk.Close()
      Return
      End If
      strCLI = Split(txtCLI.Text, vbCrLf)

      For iCmds = 0 To UBound(strCLI) – 1
      mk.Send(strCLI(iCmds))
      Next iCmds
      mk.Send(strCLI(UBound(strCLI)), True)
      txtOutput.Text = “”
      For Each Row In mk.Read()
      strGrid = Split(Row, “=”)
      txtOutput.Text = txtOutput.Text & vbCrLf & Row
      mk.Close()
      Next

      End Sub

      • 谢谢小狼哥!

        您说:
        暂时通过=.id参数踢人:
        /ppp/active/remove
        =.id=*7B

        这个ID,怎么获取呢? 我数据库里都是他们的name,ROS里的ID 怎么获取啊?

        而且你写的
        =.id=*7B
        这个 *7B 是什么意思?为什么不是个数字呢? 这个数怎么得到呢? 请指教,谢谢!

      • 谢谢小狼哥!!!已经搞定!!!万分感谢!!!

        • 呵呵,不客气,有问题一起研究。


Leave a Reply