For the current opportunistic networks routing algorithms, their message arrival rate is not high and the delivery delay is large. This paper proposes a domain-epidemic spray and forward routing algorithm. The algorithm integrates redundancy and encounter prediction strategy. According to the probability of encounters between nodes, the nodes are divided into different domains. The spray and forward strategy is used between domains and the epidemic strategy is used to forward messages within a domain. Using the message confirmation mechanism and a list which is used to record the messages that have arrived to their destination, the new algorithm can effectively reduce redundant messages. Simulation results show our algorithm can effectively improve message arrival rate and reduce end-to-end delay to some extent.