这是 sipsak 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
sipsak - 用于在 sip 服务器和用户代理上进行各种测试的实用程序
概要
西普萨克 [-dFGhiILnNMRSTUVvwz] [-一种 密码 ] [-b NUMBER ] [-C 西普里 ] [-C 西普里 ] [-D
NUMBER ] [-e NUMBER ] [-E STRING ] [-F 文件 ] [-G STRING ] [-H 主机名 ] [-l PORT ] [-M.
NUMBER ] [-要么 NUMBER ] [-p 主机名 ] [-P NUMBER ] [-q REGEXP ] [-r PORT ] [-t NUMBER ] [-你
STRING ] [-W NUMBER ] [-X NUMBER ] -s 西普里
商品描述
西普萨克 是 SIP 压力和诊断实用程序。 它向服务器发送 SIP 请求
字幕可视电话用于 西普里 并检查收到的回复。 它在以下之一中运行
模式:
- 默认模式
SIP 消息被发送到目的地 西普里 并显示回复状态。 这
请求要么取自 文件名 或作为新的 OPTIONS 消息生成。
- 跟踪路由模式 (-T)
这种模式对于学习请求的路径很有用。 它的操作类似于 IP 层
效用 跟踪路由(8)。
- 消息模式 (-M)
向给定目标发送一条短消息(类似于来自手机的 SMS)。
随着选项 -B 可以设置 MESSAGE 的内容。 有用的可能是
选项 -c 和 -O 在这种模式下。
- usrloc 模式 (-U)
SIP 注册商的压力模式。 西普萨克 保持注册到 SIP 服务器高
步伐。 此外,注册商可以强调 -I 或者 -M 选项。 如果
-I 和 -M 被省略 西普萨克 可用于注册任何给定的联系人(使用 -C
选项)用于注册商的帐户并查询当前绑定以获取
注册商处的帐户。
- 垃圾模式(-R)
解析器折磨模式。 西普萨克 不断发送随机损坏的消息来折磨一个
SIP 服务器的解析器。
- 洪水模式 (-F)
SIP 服务器的压力模式。 西普萨克 不断向 SIP 服务器发送高请求
步伐。
如果 libruli (http://www.nongnu.org/ruli/) 支持被编译到 西普萨克 二进制,然后
首先对 _sip._udp.hostname 进行 SRV 查找。 如果这个查找失败了一个正常的 A
进行查找。 如果在目标 URI 中给出了端口,则省略 SRV 查找。 故障转移,
尚不支持负载分配和其他传输。
配置
-a, --password 密码
随着给定 密码 将尝试对收到的 '401 进行身份验证
未经授权'。 将按时试用授权。 如果省略此选项
将尝试使用空密码 ("") 进行授权。 如果密码相等
至 - 密码将从标准输入(例如键盘)中读取。 这个
防止同一主机上的其他用户看到密码
进程列表。 注意: 如果其他用户仍然可以从内存中读取密码
有权使用它。
-A, --计时
如果详细程度为零,则仅打印测试运行的计时值,因为没有 -v
被给予。 如果一个或多个 -v 给出这个选项将被忽略。
-b, --apendix-begin 编号
在 usrloc 模式下附加到用户名的起始编号。 这个
NUMBER 增加,直到达到给定的值 -e 范围。 如果
省略起始编号将为 XNUMX。
-B, --message-body 字符串
给定的 STRING 将用作传出 MESSAGE 请求的正文。
-c, --来自 SIPURI
给定的 西普里 将在 From 标头中使用,如果 西普萨克 在消息模式下运行
(以 -M 选项)。 这有助于向接收者展示
MESSAGE 一个有意义和可用的地址,甚至可以发送响应。
-C,--联系 SIPURI
这是usrloc模式下Contact头的内容。 这允许插入
像邮件一样转发。 例如,您可以插入您的第一个 SIP 的 uri
帐户在第二个帐户,因此所有呼叫将转移到第二个帐户
到第一个帐户。 由于此选项的参数不会包含在
括号中,您还可以以逗号分隔的原始格式提供多个联系人
列表。 特别的话 空的 or 没有 将导致在
REGISTER 请求,因此服务器应该用当前的绑定来回答
注册商处的帐户。
-d,--忽略重定向
如果设置了此选项,则所有重定向都将被忽略。 默认没有这个选项
收到的重定向将得到尊重。 此选项在
randtrash 模式和洪水模式。
-D, --超时因素数字
SIP_T1 计时器与给定的 NUMBER 相乘。 收到一张后
对 INVITE 请求的临时响应,或当 TCP 等可靠传输时
或使用 TLS 西普萨克 等待最终响应的结果时间
直到它放弃。
-e, --appendix-end 编号
在 usrloc 模式下附加到用户名的结束编号。 这个
数字增加,直到达到这个结局 数。 在洪水模式下,这是
将发送的最大消息数。 如果省略,则默认值为
2^31 (2147483647) 在洪水模式下。
-E, --transport 字符串
价值 STRING 将用作发送和接收请求的 IP 传输
和回应。 此选项会覆盖来自 URI 评估和 SRV 的任何结果
抬头。 目前只接受 'udp' 和 'tcp' 作为值 细绳。
-f, --filename 文件
的内容 文件 将以二进制模式读入并将用作替换
对于替代创建的 sip 消息。 这可以在默认模式下使用
发出 OPTIONS 请求以外的其他请求(例如 INVITE)。 默认缺少
将插入换行符前面的回车(使用 -L 去激活
这个功能)。 如果文件名等于 - 从标准输入读取文件,
例如来自键盘或管道。 请注意操作函数
(例如,插入 Via 标头)仅使用符合 RFC 的请求进行测试。 另外
文件中的特殊字符串可以替换为一些本地或给定的值
(见 -g 和 -G 了解详细信息)。
-F,--洪水模式
此选项激活洪水模式。 在这种模式下 OPTIONS 请求
增加的 CSeq 编号被发送到服务器。 回复被忽略——源端口
localhost 的 9(丢弃)在最顶层的 Via 中进行广告。
-h,--帮助
打印出简单的使用帮助消息。 如果长选项 - 帮帮我 可用吗
将打印出带有可用长选项的帮助消息。
-g, --replace-string 字符串
在请求中激活 $replace$ 的替换(通常从
文件)与 细绳。 或者,您也可以指定属性列表和
值。 此列表必须以非字母数字字符开头和结尾。 这
必须使用相同的字符作为属性和值之间的分隔符
以及新的进一步属性值对之间。 字符串“$attribute$”将是
替换为消息中的值字符串。
-G,--替换
激活请求中以下变量的自动替换
(通常从文件中读入): $主机$ 将被替换为主机或
域名由 -s 参数。 $srchost$ 将被取代
本地机器的主机名。 $端口$ 将被本地监听端口取代
of 西普萨克。 $用户$ 将被替换为用户提供的用户名 -s
参数。
-H, --hostname 主机名
用给定的参数覆盖主机名的自动检测。
警告: 谨慎使用(仅当自动检测失败时最好)。
-i,--不通过
停用本地主机的 Via 行的插入。 警告: 这大概
禁用从服务器接收响应。
-I,--邀请模式
在 usrloc 模式下激活 Invites 循环。 应该结合 -U。
在这个组合中 西普萨克 首先注册一个用户,然后模拟一个
邀请此用户。 首先发送邀请,回复 200 OK,然后
最后发送一个 ACK。 此选项也可以不使用 -U ,但你应该
确保不要使用此选项邀请真正的 UA。 在失踪的情况下 -U 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 -l
PORT 是必需的,因为只有当你做了一个 -U 之前使用固定的本地端口运行,
跑步 -I 并且同一个固定的本地端口可以成功。 警告: 西普萨克 is
没有真正的 UA 和邀请真正的 UA 会导致意外行为。
-j, --headers 字符串
这个 绳子 将作为一个或多个附加标头添加到请求中。 这
字符串“\n”(注意:两个字符)将被 CRLF 替换,从而导致
两个单独的标题。 这样可以添加多个标题。
-l, --local-port 端口
接收UDP套接字将使用本地网络 港口。 如果文件是有用的
由 -f 其中包含正确的 Via 线。 检查 -S 详细信息选项如何
sipsak 发送和接收消息。
-L, --no-crlf
在所有换行符 (\n) 之前取消激活回车符 (\r) 的插入
(这还没有通过 carraige return 进行)如果输入来自
文件( -f )。 如果没有此选项,请求中也会附加一个空行
如果需要的话。
-m, --max-forwards 号码
这将设置 Max-Forward 标头字段的值。 如果省略没有 Max-Forward
将插入字段。 如果在 traceroute 模式下省略 数 将是255。
-M,--消息模式
这会激活 usrloc 模式中的消息循环(从 西普萨克
正常 usrloc 测试中 0.8.0 之前的版本)。 这个选项应该结合
- -U 以便成功的注册将通过测试消息进行测试
用户并回复 200 OK。 但是这个选项也可以在没有 -U
选项。 警告: 不使用 -U 可能会导致意外行为。
-n, --数字
本地主机的 IP 代替 Via 行中的完全限定域名
将会被使用。 此选项现在默认启用。
-N, --nagios 代码
使用符合 Nagios 的返回码而不是普通的 sipsak 返回码。 这意味着
西普萨克 如果一切正常,将返回 0,如果出现任何错误(本地或
偏僻的)。
-o, --sleep 号码
西普萨克 会睡觉 NUMBER ms 在 usrloc 模式下开始下一个循环之前。
这将减慢整个测试过程以使其更加真实。 每个周期都会
仍然尽可能快地完成,但整个测试会变慢。
-O, --disposition 字符串
给定的 STRING 将用作 Content-Disposition 标头的内容。
如果没有此选项,请求中将没有 Content-Disposition 标头。
-p, --outbound-proxy 主机名[:PORT]
主机名的地址是请求将发送到的目标
(传出代理)。 如果目标主机与主机部分不同,请使用此选项
请求 uri。 如果支持,主机名通过 DNS SRV 解析(请参阅
SRV 解析的描述)并且没有给出端口。
-P, --进程数
开始 NUMBER 并行执行发送和回复检查的进程。 只做
如果更高的数字 -e 在 usrloc、消息或邀请模式中给出。
-q, --search 正则表达式
匹配回复反对 REGEXP 如果没有匹配,则返回 false。 对...有用
在服务器标头字段中检测服务器名称的示例。
-r, --remote-port 端口
而不是默认的 sip 端口 5060 PORT 将会被使用。 或者
远程端口可以在 sip uri 中给出 -s 参数。
-R,--随机模式
这将激活 randtrash 模式。 在这种模式下 OPTIONS 请求将被发送到
服务器在此请求中随机崩溃的字符数量不断增加。
请求中的位置和替换字符是随机选择的。
除了错误请求 (4xx) 之外的任何其他响应都将停止此模式。 还有三个
未响应的发送将停止此模式。 随着 -t 参数垃圾的最大值
可以给出字符。
-s, --sip-uri 西普里
此强制性选项设置请求的目的地。 这取决于模式
如果只有服务器名称或用户名是必需的。 一个完整的例子
西普里 : 啜:[email protected]:123 请参阅有关 SRV 的说明部分中的注释
查找此 URI 的主机名如何转换为 IP 和端口的详细信息。
-S, --对称
使用此选项 西普萨克 将只使用一个端口来发送和接收消息。
使用此选项,用于发送的本地端口将是来自 -l 选项。
在默认模式下 西普萨克 从随机端口发送并侦听给定端口
来自 -l 选项。 请注意: 使用此选项 西普萨克 将无法接收
来自服务器的非对称信令回复(和损坏的 rport 实现)
像 Cisco 代理。 如果你跑 西普萨克 作为 root 和原始套接字支持(检查
的输出 -V 选项)则不需要此选项,因为在此
案件 西普萨克 已经只使用一个端口来发送和接收消息。
-t, --trash-chars 数字
此参数指定在 randtrash 模式下的最大垃圾字符数。
如果省略 NUMBER 将被设置为请求的长度。
-T, --traceroute-模式
这将激活 traceroute 模式。 这种模式的工作方式就像众所周知的
跟踪路由(8) 命令期望不是计算网络跳数
到达目的地用户途中的服务器数量。 还有往返时间
每个请求都被打印出来,但由于 sip 协议中的限制,
身份(IP 或名称)只有在响应来自
服务器包含一个警告标头字段。 在这种模式下,每个传出请求
Max-Forwards 头字段的值从 XNUMX 开始增加。 最大值
如果没有其他值由 Max-Forwards 标头的 -m 参数。
除了 483 或 1xx 之外的任何其他响应都被视为最终响应,并将
终止这种模式。
-u, --auth-username 字符串
使用给定的 STRING 作为身份验证的用户名值(不同的帐户
和身份验证用户名)。
-U, --usrloc 模式
这将激活 usrloc 模式。 没有 -I 或者 -M 选项,仅此
在注册商处注册用户。 使用上述选项之一,前一个
注册用户也将通过模拟呼叫流程(邀请,200,
ack) 或即时消息 (message, 200)。 所有用户帐户一个密码
在 usrloc 测试中可以用 -a 选项。 用户名是必需的
对于这种模式在 -s 范围。 编号从 -b 的参数
-e 参数附加用户名。 如果 -b 和 -e 参数被省略,
只有一个使用给定的用户名运行,但没有在用户名后附加数字
已经完成了。
-v,--详细
此参数会增加输出的详细程度。 不 -v 意味着几乎没有输出,除了
在跟踪路由和错误消息中。 最多三个v打印出内容
接收和发送的所有数据包。
-V,--version
打印出名称和版本号 西普萨克 以及当时的选项
编译成二进制文件。
-w,--提取IP
激活从警告标头字段中提取 IP 或主机名。
-W, --nagios-warn 编号
如果成功前的重传次数返回Nagios警告退出代码(1)
高于给定的数字。
-x, --过期 NUMBER
将 Expires 标头的值设置为给定的数字。
-z,--删除绑定
在 usrloc 模式下激活随机删除旧绑定。 每人多少
绑定的百分比将被删除,由 USRLOC_REMOVE_PERCENT 决定
在代码中定义(在编译前设置)。 多次删除绑定
是可能的,并且无法阻止。
返回 王斌金璟閣的價值觀
返回值 0 表示收到了 200。 1 表示其他内容,然后是 1xx 或 2xx
收到了。 2 将在本地错误时返回,例如不可解析的名称或错误
选项组合。 3 将在远程错误时返回,如套接字错误(例如 icmp
错误),在没有联系人标题的情况下重定向或根本没有答案(超时)。
如果 -N 给出了选项,如果有任何(本地或远程),返回代码将为 2
错误。 1 如果有来自重传 西普萨克 到服务器。 如果有,则为 0
根本没有错误。
注意
使用 VHDL 语言编写 西普萨克 负责任地。 在任何压力模式下运行它都会给
被测网络和服务器。
示例
sipsak -vv -s sip:[email protected]
显示收到的回复。
sipsak -T -s sip:[email protected]
跟踪没有人的 SIP 路径。
sipsak -U -C sip:me@home -x 3600 -a 密码 -s sip:myself@company
插入从工作到家的转发一小时。
sipsak -f bye.sip -g '!FTAG!345.af23!TTAG!1208.12!' -s sip:myproxy
读取文件 bye.sip,将 $FTAG$ 替换为 345.af23,将 $TTAG$ 替换为 1208.12 和
最后将此消息发送到 myproxy
限制 / 不是 实施的
许多服务器可能决定不包括 SIP“警告”头字段。 不幸的是,这
使得无法在 traceroute 模式下显示 SIP 服务器的 IP 地址。
不支持 IPv6。
缺少对 Record-Route 和 Route 标头的支持。
使用 onworks.net 服务在线使用 sipsak