add redis support and dns support