Ich versuche, einige Daten über TCP mit Net :: RawIP in Perl zu senden. Leider bekomme ich den FehlerPerl RawIP maximale Datengröße
sendto() bei /usr/lib/x86_64-linus-gnu/perl5/5.24/Net/RawIP.pm Linie 630
, wenn das TCP-Datenfeld größer ist als etwa 1470 Zeichen:
my $n = Net::RawIP->new({
ip => {
saddr => '[src]',
daddr => '[dst]',
},
tcp => {
source => 7777,
dest => 7777,
data => "x" x 150
}
});
$n->send;
funktioniert, aber
my $n = Net::RawIP->new({
ip => {
saddr => '[src]',
daddr => '[dst]',
},
tcp => {
source => 7777,
dest => 7777,
data => "x" x 1500 # size changed here
}
});
$n->send;
stürzt ab. Irgendwelche Ideen, warum das passiert?
@toolic, Das ist die Schuld des Moduls. ('krächzen (" sendto() ");' in 'util.c') – ikegami
Sie haben Recht, mit' strace' bekomme ich 'EMSGSIZE (Nachricht zu lang)'. Ich stelle die MTU über den Netzwerkmanager automatisch auf (auch wirklich hohe Werte getestet), bekomme aber trotzdem den Fehler ... – Flip