How Restrict access to admin dashboard by specific static ip?

By the time admin_init rolls around you should know if you’re doing AJAX or not. If you’re not, then check the IP. Keep in mind that anyone can fake that number.

add_action('admin_init', function() {

    if(defined('DOING_AJAX') && DOING_AJAX) {
        return; // ignore ajax
    };

    $ip = $_SERVER[ 'REMOTE_ADDR' ];

    if($ip !== '10.0.0.0') {
        wp_die(__('You are not allowed to access this part of the site'));
    }
});