小编use*_*896的帖子

获取自治系统号码(ASN)中的IP

我已经尝试在ASN号码下获取IP列表,例如AS8167但是我没有这样的运气.我已经看到团队cymru有一个IP到ASN,但这与我实际需要的相反.

php ip dns networking

9
推荐指数
1
解决办法
5086
查看次数

Windows上的数据包重定向

由于软件限制,我们目前在所有机器上运行Windows.

但是,在此范围内,我们需要将进入IP和端口的某些数据包重定向到不同的端口(相同的IP).我们有软件监听"代理端口".

这可以通过类似于以下内容的方式在Linux上使用IPTables实现:

iptables -t nat -I PREROUTING -p udp -d <DSTIP> --dport <DSTPORT> -m u32 --u32 '0>>22&0x3C@8=0xFFFFFFFF && 0>>22&0x3C@12=0x54536F75 && 0>>22&0x3C@16=0x72636520 && 0>>22&0x3C@20=0x456E6769 && 0>>22&0x3C@24=0x6E652051 && 0>>22&0x3C@28=0x75657279' -j REDIRECT --to-port <REDIRECT PORT>
Run Code Online (Sandbox Code Playgroud)

这在linux上工作得很好,并且会将某些数据包重定向到我们的代理软件,但是它是否可以在Windows上执行此类操作而无需在我们的Windows机器前面获得专用机器?

我在考虑用pcap.net写一些东西,但我猜这将不得不直接从NIC读取而不是Windows?

routing network-programming iptables windows-firewall pcap.net

7
推荐指数
1
解决办法
6179
查看次数

每个目标IP和端口的IPTables速率限制

我目前有这些规则:

iptables -I FORWARD -p udp -d {IPDST} --dport {PORTDST} -m u32 --u32 '0>>22&0x3C@8=0xFFFFFFFF' -j SRCDS-TRF
iptables -I SRCDS-TRF -p udp -d {IPDST} --dport {PORTDST} -m u32 --u32 '0>>22&0x3C@10&0xFFFF=0x5453' -m limit --limit 45/second --limit-burst 150 -j ACCEPT
iptables -I SRCDS-TRF -p udp -d {IPDST} --dport {PORTDST} -m u32 --u32 '0>>22&0x3C@9&0xFF=0x55' -m limit --limit 3/second --limit-burst 20 -j ACCEPT
iptables -I SRCDS-TRF -p udp -d {IPDST} --dport {PORTDST} -m u32 --u32 '0>>22&0x3C@9&0xFF=0x56' -m limit --limit 3/second --limit-burst 15 -j ACCEPT
iptables …
Run Code Online (Sandbox Code Playgroud)

iptables rate-limiting

7
推荐指数
1
解决办法
625
查看次数

检查进程是否每分钟都在运行

我有这个基本代码,可以检查每分钟运行的记事本.

namespace Watcher
{
    class Program
    {
        static void Main(string[] args)
        {
            for (int i = 0; ; i--)
            {
                foreach (Process clsProcess in Process.GetProcesses())
                {
                    if (clsProcess.ProcessName.Contains("notepad"))
                    {
                        Console.WriteLine("True");
                    }
                    Console.WriteLine("NFalse");
                }
                Thread.Sleep(10000);
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是它为每个正在运行的进程返回"NFalse"(例如,它将打印100个).如何才能使此打印一次显示该进程未运行?

c#

5
推荐指数
1
解决办法
7134
查看次数

TC带宽限制脚本错误

我目前正在使用以下脚本:

#!/bin/bash
#
#  tc uses the following units when passed as a parameter.
#  kbps: Kilobytes per second
#  mbps: Megabytes per second
#  kbit: Kilobits per second
#  mbit: Megabits per second
#  bps: Bytes per second
#       Amounts of data can be specified in:
#       kb or k: Kilobytes
#       mb or m: Megabytes
#       mbit: Megabits
#       kbit: Kilobits
#  To get the byte figure from bits, divide the number by 8 bit
#

#
# …
Run Code Online (Sandbox Code Playgroud)

linux bash networking

2
推荐指数
1
解决办法
1282
查看次数

更改套接字sendto()中的源IP

我的功能目前正常工作,但它从我的服务器发送主IP地址而不是另一个.

以下是代码片段:

void *sendpacket(void *par1)
{
        running_threads++;
        int thread_id = (int)par1;
        unsigned long start_ip = htonl(ntohl(start)+(per_thread*thread_id));
        unsigned long end = htonl(ntohl(start)+(per_thread*(thread_id+1)));
        unsigned long w;
        int y;
        unsigned char buf[65536];
        strcpy(buf, "M-SEARCH * HTTP/1.1\r\nHost:239.255.255.250:1900\r\nST:ssdp:all\r\nMan:\"ssdp:discover\"\r\nMX:3\r\n\r\n");
        int sizeofpayload = 90;
        int sock;
        if((sock=socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP))<0) {
                perror("cant open socket");
                exit(-1);
        }
        for(w=ntohl(start_ip);w<htonl(end);w++)
        {
                struct sockaddr_in servaddr;
                bzero(&servaddr, sizeof(servaddr));
                servaddr.sin_family = AF_INET;
                servaddr.sin_addr.s_addr=htonl(w);
                servaddr.sin_port=htons(1900);
                sendto(sock,(char *)buf,sizeofpayload,0, (struct sockaddr *)&servaddr,sizeof(servaddr));
                bytes_sent+=sizeofpayload;
                scanned++;
                hosts_done++;
                usleep(sleep_between*1000);
        }
        close(sock);
        running_threads--;
        return;
}
Run Code Online (Sandbox Code Playgroud)

这会将数据包发送到变量w,在端口1900上从我的默认服务器IP调用它192.168.0.1然而我希望它从192.168.1.1发送数据包,因此伪造UDP数据包欺骗到另一个地址.

servaddr.sin_addr.s_addr=htonl(w);
Run Code Online (Sandbox Code Playgroud)

处理目标地址,但我很难编辑源IP地址.

c sockets sendto

2
推荐指数
1
解决办法
2855
查看次数

可捕获的致命错误:第30行的/home/refined/public_html/refer.php中无法将类PDOStatement的对象转换为字符串

我目前正在建立一个小而简单的推荐系统.但是,我无法尝试返回单个用户拥有的推荐数量.当新用户注册它时,它存储在名为"referid"的列中,并且那里的ID对应于引用他的用户名.

但是,在尝试查找"referid"列中提及用户ID的次数然后回显它时,我收到此错误:

Catchable fatal error: Object of class PDOStatement could not be converted to string in /home/refined/public_html/refer.php on line 30
Run Code Online (Sandbox Code Playgroud)

我无法理解究竟是什么导致了这一点.我做了一个快速谷歌,我只能看到PDO与字符串或其他东西不兼容.我之前没有使用过PHP和MYSQL,所以我不确定如何"不"使用PDO.

<?php
$checknumber = $odb -> prepare("SELECT COUNT('referid') FROM `users` WHERE `ID` = :ID");
$checknumber -> execute(array(':ID' => $_SESSION['ID']));
echo($checknumber);
?>
Run Code Online (Sandbox Code Playgroud)

很感谢任何形式的帮助.

php mysql pdo

1
推荐指数
1
解决办法
2521
查看次数