in effetti il messaggio appare perchè la funzione HEADER invia informazioni di intestazione che sono già state inviate all'inizio della pagina! HEADER deve essere perlomeno la prima istruzione da eseguire nella pagina. Quindi, potresti fare in modo che la tua funzione restituisce con RETURN il valore $blocked da controllare all'inizio della pagina, prima dei tag >HTML>, <HEAD> e <BODY> tipo
<?php
if (in_network(parametri vari))
header ("Location: index.php");
else
header("Location: no_accesso.php");
?>
<html>
<head>
ecc