code: def send_ip_route_add(
              self, prefix, nexthops=None,
              safi=packet_safi.UNICAST, flags=zebra.ZEBRA_FLAG_INTERNAL,
              distance=None, metric=None, mtu=None, tag=None):
          
          try:
              return self._send_ip_route_impl(
                  prefix=prefix, nexthops=nexthops, safi=safi, flags=flags,
                  distance=distance, metric=metric, mtu=mtu, tag=tag,
                  is_withdraw=False)
          except ValueError as e:
              self.logger.exception(
                  'Cannot send IP route add message: %s', e)
              return None
docs: Sends ZEBRA_IPV4/v6_ROUTE_ADD message to Zebra daemon.
  
          :param prefix: IPv4/v6 Prefix to advertise.
          :param nexthops: List of nexthop addresses.
          :param safi: SAFI to advertise.
          :param flags: Message flags to advertise. See "ZEBRA_FLAG_*".
          :param distance: (Optional) Distance to advertise.
          :param metric: (Optional) Metric to advertise.
          :param mtu: (Optional) MTU size to advertise.
          :param tag: (Optional) TAG information to advertise.
          :return: Zebra message instance to be sent. None if failed.